BNA!@Posted: Tue Dec 24, 2002 8:28 am :
The second installment of the great texture creation tutorial written by one of our users who wants to remain unnamed:

If you have not already done so, please read my previous tutorial ( http://www.doom3world.org/phpbb2/viewtopic.php?t=482 ) before continuing with this one. This tutorial will make the assumption that you are familiar with everything covered in the previous.

I have very little experience with 3d modeling tools, but I know my way around Photoshop. If you are like me, you probably got a little worried when Doom developers came forward saying all their map surface materials are modeled in Max. Fear not, for it is possible to create great looking textures in Photoshop without having to use a 3d modeling program. The key to creating bumpmapped materials in Doom3 is to forget everything you know about drawing traditional texture light-dark values and start thinking in grayscale heightmaps. Let's try some heightmap experimentation.

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

I. A Simple Bump

Image

This simple drawing was created in Photoshop. In looking at it in terms of elevation, it should appear in 3D as a bump (white) that comes smoothly out of a flat surface (black).

NormalMapFilter produced the following normalmap from the source image. Note how a color wheel is used to define pixel lighting normals around the raised bump.

Image

II. Stepped Bump Forms with Angles

Now, let's expiriment with the following elevation drawing containing a raised circle form within a raised octagonal form:

Image

Now render the normalmap for this image. It should look something like this:

Image

Let's think theoretically about this normalmap. Given a light source in the upper left corner, we would expect the upper left areas of the raised regions to be lightened and the lower right to be darkened.

Image

So we would expect Doom3 to render the stated light against the texture like this:

Image

From this color information on the edges of the octagonal form, we can infer the following chart, citing the pixel normal directions given colors on intervals of 45 degrees:

Image

We could potentially use this chart to visually validate future normalmaps.

III. Creating Heightmap Compositions

I've put together a quick drawing of examples of different forms drawn as heightmaps:

Image

I imagine you are able to look at this heightmap and infer what areas are high and which are low. You probably can also already make some assumptions about how this image will appear when rendered as a normalmap. For example, it is easy to see that the right edge of the 'detail panel' will likely be a similar color to the salmon colored middle-left square in our pixel-normals chart.

Before we generate a normalmap, we can preview the effectiveness of our heightmap. We'll use Photoshop's lighting effects to preview our bumpmap. The following instructions will guide you through the process:

1. Cut out the RGB channel contents (the elevation drawing, flattened) and paste it into an alpha channel.

2. Color the RGB channel flat gray (RGB 128 128 128).

3. From the pulldown menus, access the lighting effects dialogue through Filter -> Render -> Lighting Effects

4. Change the 'Texture Channel' combo box to use the alpha channel.

Image

5. Modify the light source to your desired location and then click on 'OK'.

This should produce a nice preview of light being cast against your heightmap drawing.

Image

Now, use your 'History' tab to move back in time before you cut out the contents of your RGB and pasted it into the Alpha channel. Once you've restored the original heightmap to the flattened RGB channel, use the NormalMapFilter to render your normalmap. You will probably want to fiddle with the 'Filter Type' and 'Scale' controls to achieve the best looking normalmap.

Your finished normalmap should look something like this:

Image

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

Before we wrap this up lets take a look at one of my favorite Doom3 alpha textures - Superpipes:

Image

This material a good example of how normal, diffuse, and specular maps come together to make a convincing 3D texture. It looks really great in game and my preview in the lower right doesn't do it justice. Notice how the pipes are colored and valued with the diffusemap and shiny highlights are added with the specularmap.

Perhaps in a future tutorial I will go into tedious detail on how to create effective specular maps, but for now, just know that specularmaps are additive passes that add a shiny highlights to a material. Specularmaps help to make shiny plastics, metal ridges, and wet surfaces more convincing. To the untrained eye, specular effects are not easily recognized. Your materials would probably look fine without a specular pass, but specularity can give your material a subtle sparkle that really sets it off.

As far as diffusemaps go, just approach them as you would approach a Quake 3 texture except that you must de-emphasize the value contrasts. Remember, Doom3 will handle all of the lighting variations on an uneven surface so it is not necessary to draw highlights and shadows on your material. :!: Only use value variation in diffusemaps if one region is absolutly darker than another regardless of lighting conditions. :!:

That concludes this tutorial. Please let me know if you see any errors or misinformation in this article. Understand that I am disseminating this knowledge as I learn it so it is more than like that I am wrong about something.



dwightfry@Posted: Tue Dec 24, 2002 3:10 pm :
That's bloody fantastic!!!!!!


I couldn't for the life of me figuare out how to use the plugin filter. I thought that I read the all the information on it, but I guess I was wrong. My god, that is soooooooo much more easier then my tutorial for textures in photoshop, and you can do a whole lot more.

THANKS!!!!!!!!!!!!



Shrike@Posted: Sun Dec 29, 2002 11:59 pm :
BNA,
I think this tutorial supplies dwightfry and me (and everyone else) with everything we need to create outstanding Doom textures. The power of the Doom engine is more astonishing every time I discover another of its many capabilities. I'll be discovering its potential for quite a long time, I think. Many thanks for an outstanding tutorial, my friend. We're all endebted to you for your continued efforts. :D



BNA!@Posted: Thu Jan 16, 2003 1:40 pm :
Many thanks, but I didn't do the tutorial - it was one of our users here who shall remain anon until he decideds otherwise.



Shrike@Posted: Thu Jan 16, 2003 2:17 pm :
Probably one of the artists over at id Software, hehehe.



BNA!@Posted: Thu Jan 16, 2003 2:44 pm :
Shrike wrote:
Probably one of the artists over at id Software, hehehe.


Well,



no. :)

But it was written by a guy who knows his stuff more than I ever will.
Still an eternal thanks to him for doing so!



cR@Posted: Sat Jan 18, 2003 11:28 pm :
Please BNA, may you post the NormalMapFilter Settings, you used to produce the normal map? I've tried to use the filter, but can't get the same results..

Thanks a lot



ajerara@Posted: Thu Jan 30, 2003 6:39 am :
Thanks, mystery author and BNA. I've been reading patches of information here and there about how the textures are done in Doom 3 but I couldn't put it all together in my mind. Now I actually feel like I understand what exactly it needs and is doing with the textures. Fortunately I took some 3D Studio max classes in the past, so I kind of get it. It's really exciting.



BNA!@Posted: Thu Jan 30, 2003 7:27 am :
ajerara wrote:
Now I actually feel like I understand what exactly it needs and is doing with the textures. Fortunately I took some 3D Studio max classes in the past, so I kind of get it. It's really exciting.


Welcome to the board ajerara!

I'm glad the write up could help you - it did destroy my confusions also.
There's another point which is left out in this tutorial, but may be of interest for you:

You can add an additonal heightmap to the normal map.
This means you use the normal map to emulate 3D geometry and the heightmap to add surface roughness.
The prototype looks like this:

Code:
bumpmap addnormals (your_normal_map.tga, heightmap (useyour_diffusemap_or_greyscale.tga, 5 /*this number is the strength value of the heightmap*/))



mohh@Posted: Sat Mar 01, 2003 7:26 pm :
Wow,

These are great!! Keep them coming please. :D



bullet@Posted: Fri Jul 18, 2003 5:19 am :
my god, this is awesome!! Thank you SO much!! A few more tutorials like this and we might be able to make our own mod before the game comes out!



rich_is_bored@Posted: Wed Aug 13, 2003 4:53 pm :
I think the problem here is that your new to Photoshop.

Once you become familiar with the tools and filters creating normalmaps in this fashion will be second nature.

I'm going to point you to http://www.3dbuzz.com. Sign up. It's free. Then download the videos on Photoshop. This should get you up to speed with most everyone else.



7318@Posted: Wed Aug 13, 2003 10:52 pm :
the big trouble arrives when yu're making "natural" textiures.. I'm doing medieval textures, and there isn't any tube. or something linear... I'm doing all the stuff via 3dsmax.. but it stills being a pain in the ass! just imagnie to modelate a "irregular stones" wall! and then add some kind of detaiul to it.... with 3ds max and texgen I can get normal maps.. but there seems to be a problem with one of the colors. because in doom3 shadows that are in t "Y" edege. seems to be inverted..
so when a light is down a region of a texture. the shadows come from upstairs! so it results kinda weird! can I change the channel of one of the colors in photoshop (like inverting the colors or something?)



rich_is_bored@Posted: Wed Aug 13, 2003 11:50 pm :
I can't think of a way of modifing one color range without it causing either artifacts or affecting colors other than the intended ones.

Try doing a search for renderbumpflat. Its a console command that creates normalmaps. It may be possible for you to export your model in a different format that Doom 3 accepts to create your normalmap.



rich_is_bored@Posted: Thu Aug 14, 2003 2:31 pm :
Color and value are one in the same.



BNA!@Posted: Thu Aug 14, 2003 2:34 pm :
DiffuseMap == ColorValue



Techx@Posted: Sun Jul 25, 2004 7:20 pm :
cool tutorial, thanks



The DeathCollector@Posted: Sat Aug 07, 2004 1:57 am :
Wow- I was experimenting with making "burns & scarring" the Doom3 Player Hands yesterday, I walked away with some nuggets of experience, but after reading that preliminary tut- a lot of the 'new' editing concepts make more sense now. :o



HateTank@Posted: Fri Aug 13, 2004 2:46 am :
If anyone has some free time and doesn't mind checking out the textures I made up using this tutorial, please check them out here: http://HateTank.tripod.com/files/theatre.zip I'd certainly appreciate any feedback and some more pointers. I don't totally grasp the whole bumpmapping thing, and look forward to any advice :) Sorry if I'm postin this in the wrong place, but I'm trying to give credit to the tut author here.. great info!



DocRabbit@Posted: Thu Aug 19, 2004 5:19 am :
Diffuse Map=

Imagine you are painting an old rough wooden panel. The paint that is in the bucket with create the diffuse map. If you could peal the paint off and lay it flat and smoothed out, that would be the diffuse map.

Bump map=
Take a black and white snapshot of that old wood panel. The bump map could be generated from that.

Excellent Tutorial!!.. Good to have a photoshop'r type tutorial, not trying to find the right key to press is a relief.



just1n@Posted: Sun Sep 19, 2004 7:52 pm :
Images don't quite work.



uberstonks@Posted: Sun Sep 19, 2004 8:56 pm :
yeah dead images.. I would havelike to see them too :cry:



haihn@Posted: Tue Oct 19, 2004 9:05 am :
BNA, pls help me!
I try to use your BW image (elevation2.jpg) for creating normal map, but it's bad quality (it's too rough). I can not create a normal map as good as yours (normal2.jpg)
Also I can not create normal map with sharp edges (if so, it will be support my model with good quality bump).
I have tryed a lot of setting in normal map filter, but all the normal maps are not smooth and sharp as your images.

So please let me know how you have done it.
Thank you very much
haihn



[/url]



za_stalina@Posted: Tue Oct 11, 2005 9:15 pm :
In tutorial #1 BNA explained us how to load a filter for Photoshop (even a retard can do this) and in the tutorial #2 BNA sudden jumped to the advanced Photoshop users sending others to see Photoshop video tutorials.
well why to see 2 hours Photoshop tutorials to just find what I look ?



rich_is_bored@Posted: Wed Oct 12, 2005 4:02 am :
haihn wrote:
BNA, pls help me!
I try to use your BW image (elevation2.jpg) for creating normal map, but it's bad quality (it's too rough).


The images in this tutorial were never intended to be run through the plugin. They were compressed for use on the web.

To get results of the same caliber as what's shown here you'd need the original images before they were compressed.

Compressed images have artifacts in them which don't translate well when converting to normal maps.

You should be drawing your own height maps and running them through the plugin.

I've got an article in the works on the wiki that trys to explain the plugin interface...

http://wiki.doom3reference.com/wiki/Nvi ... verview%29

Quote:
In tutorial #1 BNA explained us how to load a filter for Photoshop (even a retard can do this) and in the tutorial #2 BNA sudden jumped to the advanced Photoshop users sending others to see Photoshop video tutorials.
well why to see 2 hours Photoshop tutorials to just find what I look ?


Actually, I suggested to someone that they go visit http://www.3Dbuzz.com and watch the PS video tutorials. BNA had nothing to do with that.

Besides, what's so advanced about this? You simply draw a black and white image and run it through the plugin. What are you getting stuck on?



za_stalina@Posted: Thu Oct 13, 2005 7:00 pm :
rich_is_bored wrote:
Actually, I suggested to someone that they go visit http://www.3Dbuzz.com and watch the PS video tutorials. BNA had nothing to do with that.
Besides, what's so advanced about this? You simply draw a black and white image and run it through the plugin. What are you getting stuck on?

Nothing about the plugin!
It was about doing some operations with RGB and alphachannel. I found what was all about but I had to spend some unworth time for this. He could just simply put 2 instruction lines in addition in the tutorial. If you don't have qualities for writing tutorials don't write them. Tutorials suppose to clarify not to confuse :/

In order to be able to create doom3 textures you just have to know 15% from all the PS functions so why should somebody learn all the PS stuff ?
I learned the x86 assembling language in about 2 weeks and was able to create viruses after that (I didn't create viruses because the huge code work and because this don't had anything to do with my ego well anyway doesn't matter) but I still don't wanna learn the complete PS functions.
A "let's make doom3 textures" tutorial must have all the steps from A to Z
not to mention that in this #2 tutorial you well learn how to create heighmaps but don't have the material implementation (the blend instructions for this) like in the first tutorial. If you complete the all #2 tutorial you"ll finally have no doom3 texture to apply to in editor.
Of course that you can take a look in material files to see the synyax but the tutorial don't mention it.
I you are paying attention to the title it says Doom3 texture creation. And you just have PS texture creation and this is not full too.

And btw video tutorials are boring. After looking at some Maya video tutorials I get bored unable to complete all the tutorials. Off course was damn simple but was too boring. Not to mention the voice was like the guy was thirsty in all the videos :)



rich_is_bored@Posted: Thu Oct 13, 2005 11:54 pm :
If we are still talking about normal map creation, whatever you are doing it's unorthadox. This tutorial is taylored to Photoshop users who are working with normal maps.

A majority of these people draw simple black and white images and pass them to the plugin without performing any extra operations.

For them, this tutorial does clear things up and I'm sure a couple hundred people could follow up my post to verify that. Anyone find this tutorial useful?

But, I understand your gripe. It's the fact that the title of this series of tutorials is called "texture creation tutorial" but the two parts posted only deal with normal maps and photoshop specifically. Perhaps a title change is in order? BNA, your thoughts?

At any rate, that doesn't mean that these tutorials aren't helpful. It just means that it was never followed up with a part 3, 4, 5, ect... to cover the aspects of diffuse, and specular maps.

As far as texture creation goes, you don't have to know Photoshop inside and out. But, if you have any intention of doing graphical work you certainly need to know how to use a graphical application of some sort.

Choose your toolset and be done with it. Don't bitch about tutorials that aren't applicable to your workflow because they don't discuss the tools you're familiar with.

The wiki offers general descriptions of the functions of each type of map and what you should be aiming for when creating them. It's more the type of information you'd find in a non-application-specific tutorial. I suggest you read it and apply the knowledge to your work.

http://wiki.doom3reference.com/wiki/Texturing

That's really as good as you could hope for without delving into the specific tools and methods of any one application.

If you want to get into that sort of thing, there are plenty of application geared tutorial sites on the Internet that will get you up to speed on whatever application you decide to work with.

From that point it's simply a matter of applying the general guidelines on the wiki to the application you're working with.



za_stalina@Posted: Fri Oct 14, 2005 7:50 pm :
10x for the links I have no doubt about your good intentions... I'll take a look if the time will be on my side :)



Maccabee@Posted: Fri May 12, 2006 11:02 pm :
http://www.doom3world.org/phpbb2/viewtopic.php?t=482

above thread appears to be down atm. Is there any way to get it fixed? I am looking to read this particular tutorial



Tweaker@Posted: Thu Jun 08, 2006 3:56 pm :
Indeed, any word on why the first part of this tutorial doesn't load? It's rather important. :)



kat@Posted: Thu Jun 08, 2006 4:28 pm :
Not sure why it's doing that. Will probably mean manually inspecting the database to see why it doesn't appear.



Tweaker@Posted: Sun Jun 18, 2006 1:41 am :
Any luck? :)



rich_is_bored@Posted: Sun Jun 18, 2006 2:11 am :
I've posted a cached version I pulled from web.archive.org...

http://www.doom3world.org/phpbb2/viewtopic.php?p=146339



BNA!@Posted: Sun Jun 18, 2006 9:08 am :
Thank you very much.

The problem is, that after the last upgrades of my MySQL server + phpBB a few topics appear to filter exotic combinations of posted scripting code wrong.
That's why it doesn't load past the header.

Manual expecting the DB is rather painful since the code treated as malicious could be in any post related to the topic.



Tweaker@Posted: Sun Jun 18, 2006 1:47 pm :
Ah, thank you!!



steve0@Posted: Thu May 29, 2008 3:04 pm :
Good info !Thank you !



BNA!@Posted: Tue Dec 24, 2002 8:28 am :
The second installment of the great texture creation tutorial written by one of our users who wants to remain unnamed:

If you have not already done so, please read my previous tutorial ( http://www.doom3world.org/phpbb2/viewtopic.php?t=482 ) before continuing with this one. This tutorial will make the assumption that you are familiar with everything covered in the previous.

I have very little experience with 3d modeling tools, but I know my way around Photoshop. If you are like me, you probably got a little worried when Doom developers came forward saying all their map surface materials are modeled in Max. Fear not, for it is possible to create great looking textures in Photoshop without having to use a 3d modeling program. The key to creating bumpmapped materials in Doom3 is to forget everything you know about drawing traditional texture light-dark values and start thinking in grayscale heightmaps. Let's try some heightmap experimentation.

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

I. A Simple Bump

Image

This simple drawing was created in Photoshop. In looking at it in terms of elevation, it should appear in 3D as a bump (white) that comes smoothly out of a flat surface (black).

NormalMapFilter produced the following normalmap from the source image. Note how a color wheel is used to define pixel lighting normals around the raised bump.

Image

II. Stepped Bump Forms with Angles

Now, let's expiriment with the following elevation drawing containing a raised circle form within a raised octagonal form:

Image

Now render the normalmap for this image. It should look something like this:

Image

Let's think theoretically about this normalmap. Given a light source in the upper left corner, we would expect the upper left areas of the raised regions to be lightened and the lower right to be darkened.

Image

So we would expect Doom3 to render the stated light against the texture like this:

Image

From this color information on the edges of the octagonal form, we can infer the following chart, citing the pixel normal directions given colors on intervals of 45 degrees:

Image

We could potentially use this chart to visually validate future normalmaps.

III. Creating Heightmap Compositions

I've put together a quick drawing of examples of different forms drawn as heightmaps:

Image

I imagine you are able to look at this heightmap and infer what areas are high and which are low. You probably can also already make some assumptions about how this image will appear when rendered as a normalmap. For example, it is easy to see that the right edge of the 'detail panel' will likely be a similar color to the salmon colored middle-left square in our pixel-normals chart.

Before we generate a normalmap, we can preview the effectiveness of our heightmap. We'll use Photoshop's lighting effects to preview our bumpmap. The following instructions will guide you through the process:

1. Cut out the RGB channel contents (the elevation drawing, flattened) and paste it into an alpha channel.

2. Color the RGB channel flat gray (RGB 128 128 128).

3. From the pulldown menus, access the lighting effects dialogue through Filter -> Render -> Lighting Effects

4. Change the 'Texture Channel' combo box to use the alpha channel.

Image

5. Modify the light source to your desired location and then click on 'OK'.

This should produce a nice preview of light being cast against your heightmap drawing.

Image

Now, use your 'History' tab to move back in time before you cut out the contents of your RGB and pasted it into the Alpha channel. Once you've restored the original heightmap to the flattened RGB channel, use the NormalMapFilter to render your normalmap. You will probably want to fiddle with the 'Filter Type' and 'Scale' controls to achieve the best looking normalmap.

Your finished normalmap should look something like this:

Image

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

Before we wrap this up lets take a look at one of my favorite Doom3 alpha textures - Superpipes:

Image

This material a good example of how normal, diffuse, and specular maps come together to make a convincing 3D texture. It looks really great in game and my preview in the lower right doesn't do it justice. Notice how the pipes are colored and valued with the diffusemap and shiny highlights are added with the specularmap.

Perhaps in a future tutorial I will go into tedious detail on how to create effective specular maps, but for now, just know that specularmaps are additive passes that add a shiny highlights to a material. Specularmaps help to make shiny plastics, metal ridges, and wet surfaces more convincing. To the untrained eye, specular effects are not easily recognized. Your materials would probably look fine without a specular pass, but specularity can give your material a subtle sparkle that really sets it off.

As far as diffusemaps go, just approach them as you would approach a Quake 3 texture except that you must de-emphasize the value contrasts. Remember, Doom3 will handle all of the lighting variations on an uneven surface so it is not necessary to draw highlights and shadows on your material. :!: Only use value variation in diffusemaps if one region is absolutly darker than another regardless of lighting conditions. :!:

That concludes this tutorial. Please let me know if you see any errors or misinformation in this article. Understand that I am disseminating this knowledge as I learn it so it is more than like that I am wrong about something.



dwightfry@Posted: Tue Dec 24, 2002 3:10 pm :
That's bloody fantastic!!!!!!


I couldn't for the life of me figuare out how to use the plugin filter. I thought that I read the all the information on it, but I guess I was wrong. My god, that is soooooooo much more easier then my tutorial for textures in photoshop, and you can do a whole lot more.

THANKS!!!!!!!!!!!!



Shrike@Posted: Sun Dec 29, 2002 11:59 pm :
BNA,
I think this tutorial supplies dwightfry and me (and everyone else) with everything we need to create outstanding Doom textures. The power of the Doom engine is more astonishing every time I discover another of its many capabilities. I'll be discovering its potential for quite a long time, I think. Many thanks for an outstanding tutorial, my friend. We're all endebted to you for your continued efforts. :D



BNA!@Posted: Thu Jan 16, 2003 1:40 pm :
Many thanks, but I didn't do the tutorial - it was one of our users here who shall remain anon until he decideds otherwise.



Shrike@Posted: Thu Jan 16, 2003 2:17 pm :
Probably one of the artists over at id Software, hehehe.



BNA!@Posted: Thu Jan 16, 2003 2:44 pm :
Shrike wrote:
Probably one of the artists over at id Software, hehehe.


Well,



no. :)

But it was written by a guy who knows his stuff more than I ever will.
Still an eternal thanks to him for doing so!



cR@Posted: Sat Jan 18, 2003 11:28 pm :
Please BNA, may you post the NormalMapFilter Settings, you used to produce the normal map? I've tried to use the filter, but can't get the same results..

Thanks a lot



ajerara@Posted: Thu Jan 30, 2003 6:39 am :
Thanks, mystery author and BNA. I've been reading patches of information here and there about how the textures are done in Doom 3 but I couldn't put it all together in my mind. Now I actually feel like I understand what exactly it needs and is doing with the textures. Fortunately I took some 3D Studio max classes in the past, so I kind of get it. It's really exciting.



BNA!@Posted: Thu Jan 30, 2003 7:27 am :
ajerara wrote:
Now I actually feel like I understand what exactly it needs and is doing with the textures. Fortunately I took some 3D Studio max classes in the past, so I kind of get it. It's really exciting.


Welcome to the board ajerara!

I'm glad the write up could help you - it did destroy my confusions also.
There's another point which is left out in this tutorial, but may be of interest for you:

You can add an additonal heightmap to the normal map.
This means you use the normal map to emulate 3D geometry and the heightmap to add surface roughness.
The prototype looks like this:

Code:
bumpmap addnormals (your_normal_map.tga, heightmap (useyour_diffusemap_or_greyscale.tga, 5 /*this number is the strength value of the heightmap*/))



mohh@Posted: Sat Mar 01, 2003 7:26 pm :
Wow,

These are great!! Keep them coming please. :D



bullet@Posted: Fri Jul 18, 2003 5:19 am :
my god, this is awesome!! Thank you SO much!! A few more tutorials like this and we might be able to make our own mod before the game comes out!



rich_is_bored@Posted: Wed Aug 13, 2003 4:53 pm :
I think the problem here is that your new to Photoshop.

Once you become familiar with the tools and filters creating normalmaps in this fashion will be second nature.

I'm going to point you to http://www.3dbuzz.com. Sign up. It's free. Then download the videos on Photoshop. This should get you up to speed with most everyone else.



7318@Posted: Wed Aug 13, 2003 10:52 pm :
the big trouble arrives when yu're making "natural" textiures.. I'm doing medieval textures, and there isn't any tube. or something linear... I'm doing all the stuff via 3dsmax.. but it stills being a pain in the ass! just imagnie to modelate a "irregular stones" wall! and then add some kind of detaiul to it.... with 3ds max and texgen I can get normal maps.. but there seems to be a problem with one of the colors. because in doom3 shadows that are in t "Y" edege. seems to be inverted..
so when a light is down a region of a texture. the shadows come from upstairs! so it results kinda weird! can I change the channel of one of the colors in photoshop (like inverting the colors or something?)



rich_is_bored@Posted: Wed Aug 13, 2003 11:50 pm :
I can't think of a way of modifing one color range without it causing either artifacts or affecting colors other than the intended ones.

Try doing a search for renderbumpflat. Its a console command that creates normalmaps. It may be possible for you to export your model in a different format that Doom 3 accepts to create your normalmap.



rich_is_bored@Posted: Thu Aug 14, 2003 2:31 pm :
Color and value are one in the same.



BNA!@Posted: Thu Aug 14, 2003 2:34 pm :
DiffuseMap == ColorValue



Techx@Posted: Sun Jul 25, 2004 7:20 pm :
cool tutorial, thanks



The DeathCollector@Posted: Sat Aug 07, 2004 1:57 am :
Wow- I was experimenting with making "burns & scarring" the Doom3 Player Hands yesterday, I walked away with some nuggets of experience, but after reading that preliminary tut- a lot of the 'new' editing concepts make more sense now. :o



HateTank@Posted: Fri Aug 13, 2004 2:46 am :
If anyone has some free time and doesn't mind checking out the textures I made up using this tutorial, please check them out here: http://HateTank.tripod.com/files/theatre.zip I'd certainly appreciate any feedback and some more pointers. I don't totally grasp the whole bumpmapping thing, and look forward to any advice :) Sorry if I'm postin this in the wrong place, but I'm trying to give credit to the tut author here.. great info!



DocRabbit@Posted: Thu Aug 19, 2004 5:19 am :
Diffuse Map=

Imagine you are painting an old rough wooden panel. The paint that is in the bucket with create the diffuse map. If you could peal the paint off and lay it flat and smoothed out, that would be the diffuse map.

Bump map=
Take a black and white snapshot of that old wood panel. The bump map could be generated from that.

Excellent Tutorial!!.. Good to have a photoshop'r type tutorial, not trying to find the right key to press is a relief.



just1n@Posted: Sun Sep 19, 2004 7:52 pm :
Images don't quite work.



uberstonks@Posted: Sun Sep 19, 2004 8:56 pm :
yeah dead images.. I would havelike to see them too :cry:



haihn@Posted: Tue Oct 19, 2004 9:05 am :
BNA, pls help me!
I try to use your BW image (elevation2.jpg) for creating normal map, but it's bad quality (it's too rough). I can not create a normal map as good as yours (normal2.jpg)
Also I can not create normal map with sharp edges (if so, it will be support my model with good quality bump).
I have tryed a lot of setting in normal map filter, but all the normal maps are not smooth and sharp as your images.

So please let me know how you have done it.
Thank you very much
haihn



[/url]



za_stalina@Posted: Tue Oct 11, 2005 9:15 pm :
In tutorial #1 BNA explained us how to load a filter for Photoshop (even a retard can do this) and in the tutorial #2 BNA sudden jumped to the advanced Photoshop users sending others to see Photoshop video tutorials.
well why to see 2 hours Photoshop tutorials to just find what I look ?



rich_is_bored@Posted: Wed Oct 12, 2005 4:02 am :
haihn wrote:
BNA, pls help me!
I try to use your BW image (elevation2.jpg) for creating normal map, but it's bad quality (it's too rough).


The images in this tutorial were never intended to be run through the plugin. They were compressed for use on the web.

To get results of the same caliber as what's shown here you'd need the original images before they were compressed.

Compressed images have artifacts in them which don't translate well when converting to normal maps.

You should be drawing your own height maps and running them through the plugin.

I've got an article in the works on the wiki that trys to explain the plugin interface...

http://wiki.doom3reference.com/wiki/Nvi ... verview%29

Quote:
In tutorial #1 BNA explained us how to load a filter for Photoshop (even a retard can do this) and in the tutorial #2 BNA sudden jumped to the advanced Photoshop users sending others to see Photoshop video tutorials.
well why to see 2 hours Photoshop tutorials to just find what I look ?


Actually, I suggested to someone that they go visit http://www.3Dbuzz.com and watch the PS video tutorials. BNA had nothing to do with that.

Besides, what's so advanced about this? You simply draw a black and white image and run it through the plugin. What are you getting stuck on?



za_stalina@Posted: Thu Oct 13, 2005 7:00 pm :
rich_is_bored wrote:
Actually, I suggested to someone that they go visit http://www.3Dbuzz.com and watch the PS video tutorials. BNA had nothing to do with that.
Besides, what's so advanced about this? You simply draw a black and white image and run it through the plugin. What are you getting stuck on?

Nothing about the plugin!
It was about doing some operations with RGB and alphachannel. I found what was all about but I had to spend some unworth time for this. He could just simply put 2 instruction lines in addition in the tutorial. If you don't have qualities for writing tutorials don't write them. Tutorials suppose to clarify not to confuse :/

In order to be able to create doom3 textures you just have to know 15% from all the PS functions so why should somebody learn all the PS stuff ?
I learned the x86 assembling language in about 2 weeks and was able to create viruses after that (I didn't create viruses because the huge code work and because this don't had anything to do with my ego well anyway doesn't matter) but I still don't wanna learn the complete PS functions.
A "let's make doom3 textures" tutorial must have all the steps from A to Z
not to mention that in this #2 tutorial you well learn how to create heighmaps but don't have the material implementation (the blend instructions for this) like in the first tutorial. If you complete the all #2 tutorial you"ll finally have no doom3 texture to apply to in editor.
Of course that you can take a look in material files to see the synyax but the tutorial don't mention it.
I you are paying attention to the title it says Doom3 texture creation. And you just have PS texture creation and this is not full too.

And btw video tutorials are boring. After looking at some Maya video tutorials I get bored unable to complete all the tutorials. Off course was damn simple but was too boring. Not to mention the voice was like the guy was thirsty in all the videos :)



rich_is_bored@Posted: Thu Oct 13, 2005 11:54 pm :
If we are still talking about normal map creation, whatever you are doing it's unorthadox. This tutorial is taylored to Photoshop users who are working with normal maps.

A majority of these people draw simple black and white images and pass them to the plugin without performing any extra operations.

For them, this tutorial does clear things up and I'm sure a couple hundred people could follow up my post to verify that. Anyone find this tutorial useful?

But, I understand your gripe. It's the fact that the title of this series of tutorials is called "texture creation tutorial" but the two parts posted only deal with normal maps and photoshop specifically. Perhaps a title change is in order? BNA, your thoughts?

At any rate, that doesn't mean that these tutorials aren't helpful. It just means that it was never followed up with a part 3, 4, 5, ect... to cover the aspects of diffuse, and specular maps.

As far as texture creation goes, you don't have to know Photoshop inside and out. But, if you have any intention of doing graphical work you certainly need to know how to use a graphical application of some sort.

Choose your toolset and be done with it. Don't bitch about tutorials that aren't applicable to your workflow because they don't discuss the tools you're familiar with.

The wiki offers general descriptions of the functions of each type of map and what you should be aiming for when creating them. It's more the type of information you'd find in a non-application-specific tutorial. I suggest you read it and apply the knowledge to your work.

http://wiki.doom3reference.com/wiki/Texturing

That's really as good as you could hope for without delving into the specific tools and methods of any one application.

If you want to get into that sort of thing, there are plenty of application geared tutorial sites on the Internet that will get you up to speed on whatever application you decide to work with.

From that point it's simply a matter of applying the general guidelines on the wiki to the application you're working with.



za_stalina@Posted: Fri Oct 14, 2005 7:50 pm :
10x for the links I have no doubt about your good intentions... I'll take a look if the time will be on my side :)



Maccabee@Posted: Fri May 12, 2006 11:02 pm :
http://www.doom3world.org/phpbb2/viewtopic.php?t=482

above thread appears to be down atm. Is there any way to get it fixed? I am looking to read this particular tutorial



Tweaker@Posted: Thu Jun 08, 2006 3:56 pm :
Indeed, any word on why the first part of this tutorial doesn't load? It's rather important. :)



kat@Posted: Thu Jun 08, 2006 4:28 pm :
Not sure why it's doing that. Will probably mean manually inspecting the database to see why it doesn't appear.



Tweaker@Posted: Sun Jun 18, 2006 1:41 am :
Any luck? :)



rich_is_bored@Posted: Sun Jun 18, 2006 2:11 am :
I've posted a cached version I pulled from web.archive.org...

http://www.doom3world.org/phpbb2/viewtopic.php?p=146339



BNA!@Posted: Sun Jun 18, 2006 9:08 am :
Thank you very much.

The problem is, that after the last upgrades of my MySQL server + phpBB a few topics appear to filter exotic combinations of posted scripting code wrong.
That's why it doesn't load past the header.

Manual expecting the DB is rather painful since the code treated as malicious could be in any post related to the topic.



Tweaker@Posted: Sun Jun 18, 2006 1:47 pm :
Ah, thank you!!



steve0@Posted: Thu May 29, 2008 3:04 pm :
Good info !Thank you !



BNA!@Posted: Tue Dec 24, 2002 8:28 am :
The second installment of the great texture creation tutorial written by one of our users who wants to remain unnamed:

If you have not already done so, please read my previous tutorial ( http://www.doom3world.org/phpbb2/viewtopic.php?t=482 ) before continuing with this one. This tutorial will make the assumption that you are familiar with everything covered in the previous.

I have very little experience with 3d modeling tools, but I know my way around Photoshop. If you are like me, you probably got a little worried when Doom developers came forward saying all their map surface materials are modeled in Max. Fear not, for it is possible to create great looking textures in Photoshop without having to use a 3d modeling program. The key to creating bumpmapped materials in Doom3 is to forget everything you know about drawing traditional texture light-dark values and start thinking in grayscale heightmaps. Let's try some heightmap experimentation.

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

I. A Simple Bump

Image

This simple drawing was created in Photoshop. In looking at it in terms of elevation, it should appear in 3D as a bump (white) that comes smoothly out of a flat surface (black).

NormalMapFilter produced the following normalmap from the source image. Note how a color wheel is used to define pixel lighting normals around the raised bump.

Image

II. Stepped Bump Forms with Angles

Now, let's expiriment with the following elevation drawing containing a raised circle form within a raised octagonal form:

Image

Now render the normalmap for this image. It should look something like this:

Image

Let's think theoretically about this normalmap. Given a light source in the upper left corner, we would expect the upper left areas of the raised regions to be lightened and the lower right to be darkened.

Image

So we would expect Doom3 to render the stated light against the texture like this:

Image

From this color information on the edges of the octagonal form, we can infer the following chart, citing the pixel normal directions given colors on intervals of 45 degrees:

Image

We could potentially use this chart to visually validate future normalmaps.

III. Creating Heightmap Compositions

I've put together a quick drawing of examples of different forms drawn as heightmaps:

Image

I imagine you are able to look at this heightmap and infer what areas are high and which are low. You probably can also already make some assumptions about how this image will appear when rendered as a normalmap. For example, it is easy to see that the right edge of the 'detail panel' will likely be a similar color to the salmon colored middle-left square in our pixel-normals chart.

Before we generate a normalmap, we can preview the effectiveness of our heightmap. We'll use Photoshop's lighting effects to preview our bumpmap. The following instructions will guide you through the process:

1. Cut out the RGB channel contents (the elevation drawing, flattened) and paste it into an alpha channel.

2. Color the RGB channel flat gray (RGB 128 128 128).

3. From the pulldown menus, access the lighting effects dialogue through Filter -> Render -> Lighting Effects

4. Change the 'Texture Channel' combo box to use the alpha channel.

Image

5. Modify the light source to your desired location and then click on 'OK'.

This should produce a nice preview of light being cast against your heightmap drawing.

Image

Now, use your 'History' tab to move back in time before you cut out the contents of your RGB and pasted it into the Alpha channel. Once you've restored the original heightmap to the flattened RGB channel, use the NormalMapFilter to render your normalmap. You will probably want to fiddle with the 'Filter Type' and 'Scale' controls to achieve the best looking normalmap.

Your finished normalmap should look something like this:

Image

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

Before we wrap this up lets take a look at one of my favorite Doom3 alpha textures - Superpipes:

Image

This material a good example of how normal, diffuse, and specular maps come together to make a convincing 3D texture. It looks really great in game and my preview in the lower right doesn't do it justice. Notice how the pipes are colored and valued with the diffusemap and shiny highlights are added with the specularmap.

Perhaps in a future tutorial I will go into tedious detail on how to create effective specular maps, but for now, just know that specularmaps are additive passes that add a shiny highlights to a material. Specularmaps help to make shiny plastics, metal ridges, and wet surfaces more convincing. To the untrained eye, specular effects are not easily recognized. Your materials would probably look fine without a specular pass, but specularity can give your material a subtle sparkle that really sets it off.

As far as diffusemaps go, just approach them as you would approach a Quake 3 texture except that you must de-emphasize the value contrasts. Remember, Doom3 will handle all of the lighting variations on an uneven surface so it is not necessary to draw highlights and shadows on your material. :!: Only use value variation in diffusemaps if one region is absolutly darker than another regardless of lighting conditions. :!:

That concludes this tutorial. Please let me know if you see any errors or misinformation in this article. Understand that I am disseminating this knowledge as I learn it so it is more than like that I am wrong about something.



dwightfry@Posted: Tue Dec 24, 2002 3:10 pm :
That's bloody fantastic!!!!!!


I couldn't for the life of me figuare out how to use the plugin filter. I thought that I read the all the information on it, but I guess I was wrong. My god, that is soooooooo much more easier then my tutorial for textures in photoshop, and you can do a whole lot more.

THANKS!!!!!!!!!!!!



Shrike@Posted: Sun Dec 29, 2002 11:59 pm :
BNA,
I think this tutorial supplies dwightfry and me (and everyone else) with everything we need to create outstanding Doom textures. The power of the Doom engine is more astonishing every time I discover another of its many capabilities. I'll be discovering its potential for quite a long time, I think. Many thanks for an outstanding tutorial, my friend. We're all endebted to you for your continued efforts. :D



BNA!@Posted: Thu Jan 16, 2003 1:40 pm :
Many thanks, but I didn't do the tutorial - it was one of our users here who shall remain anon until he decideds otherwise.



Shrike@Posted: Thu Jan 16, 2003 2:17 pm :
Probably one of the artists over at id Software, hehehe.



BNA!@Posted: Thu Jan 16, 2003 2:44 pm :
Shrike wrote:
Probably one of the artists over at id Software, hehehe.


Well,



no. :)

But it was written by a guy who knows his stuff more than I ever will.
Still an eternal thanks to him for doing so!



cR@Posted: Sat Jan 18, 2003 11:28 pm :
Please BNA, may you post the NormalMapFilter Settings, you used to produce the normal map? I've tried to use the filter, but can't get the same results..

Thanks a lot



ajerara@Posted: Thu Jan 30, 2003 6:39 am :
Thanks, mystery author and BNA. I've been reading patches of information here and there about how the textures are done in Doom 3 but I couldn't put it all together in my mind. Now I actually feel like I understand what exactly it needs and is doing with the textures. Fortunately I took some 3D Studio max classes in the past, so I kind of get it. It's really exciting.



BNA!@Posted: Thu Jan 30, 2003 7:27 am :
ajerara wrote:
Now I actually feel like I understand what exactly it needs and is doing with the textures. Fortunately I took some 3D Studio max classes in the past, so I kind of get it. It's really exciting.


Welcome to the board ajerara!

I'm glad the write up could help you - it did destroy my confusions also.
There's another point which is left out in this tutorial, but may be of interest for you:

You can add an additonal heightmap to the normal map.
This means you use the normal map to emulate 3D geometry and the heightmap to add surface roughness.
The prototype looks like this:

Code:
bumpmap addnormals (your_normal_map.tga, heightmap (useyour_diffusemap_or_greyscale.tga, 5 /*this number is the strength value of the heightmap*/))



mohh@Posted: Sat Mar 01, 2003 7:26 pm :
Wow,

These are great!! Keep them coming please. :D



bullet@Posted: Fri Jul 18, 2003 5:19 am :
my god, this is awesome!! Thank you SO much!! A few more tutorials like this and we might be able to make our own mod before the game comes out!



rich_is_bored@Posted: Wed Aug 13, 2003 4:53 pm :
I think the problem here is that your new to Photoshop.

Once you become familiar with the tools and filters creating normalmaps in this fashion will be second nature.

I'm going to point you to http://www.3dbuzz.com. Sign up. It's free. Then download the videos on Photoshop. This should get you up to speed with most everyone else.



7318@Posted: Wed Aug 13, 2003 10:52 pm :
the big trouble arrives when yu're making "natural" textiures.. I'm doing medieval textures, and there isn't any tube. or something linear... I'm doing all the stuff via 3dsmax.. but it stills being a pain in the ass! just imagnie to modelate a "irregular stones" wall! and then add some kind of detaiul to it.... with 3ds max and texgen I can get normal maps.. but there seems to be a problem with one of the colors. because in doom3 shadows that are in t "Y" edege. seems to be inverted..
so when a light is down a region of a texture. the shadows come from upstairs! so it results kinda weird! can I change the channel of one of the colors in photoshop (like inverting the colors or something?)



rich_is_bored@Posted: Wed Aug 13, 2003 11:50 pm :
I can't think of a way of modifing one color range without it causing either artifacts or affecting colors other than the intended ones.

Try doing a search for renderbumpflat. Its a console command that creates normalmaps. It may be possible for you to export your model in a different format that Doom 3 accepts to create your normalmap.



rich_is_bored@Posted: Thu Aug 14, 2003 2:31 pm :
Color and value are one in the same.



BNA!@Posted: Thu Aug 14, 2003 2:34 pm :
DiffuseMap == ColorValue



Techx@Posted: Sun Jul 25, 2004 7:20 pm :
cool tutorial, thanks



The DeathCollector@Posted: Sat Aug 07, 2004 1:57 am :
Wow- I was experimenting with making "burns & scarring" the Doom3 Player Hands yesterday, I walked away with some nuggets of experience, but after reading that preliminary tut- a lot of the 'new' editing concepts make more sense now. :o