• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

[FsX] Bump maps

arno

Administrator
Staff member
FSDevConf team
Resource contributor
Messages
33,995
Country
netherlands
Hi,

I have been playing a bit with bump maps in the FsX gamepack to see how I can use them on my scenery objects. But I have not really find the best way to use them yet.

Look at the attached image. On the left you see a cube with the texture without a bump map (only reflection on the windows added). The other two screenshots are from the same building with bump maps applied. As you can see the one on the right has a little bit too much "bumps", it makes the building look ugly I think.

But my main problem at the moment is how the building is lighted. It seems that when I use the bump maps, that all sides are shaded almost the same. While you can see on the left how it looks without the bump map.

Has anybody else seen this as well?
 

Attachments

  • bump.jpg
    bump.jpg
    44.5 KB · Views: 5,709
Needs reversing/inverting on the windows

Hi Arno,

I think the 3rd. one is O.K.
But your bump map needs reversing/inverting on the windows ?? . Looks more like glass bricks than a window frame.

I am not sure there is anything wrong with the lighting allowing where the shadow is.

Steve
 
Hi Steve,

I still like the texture without bump maps more, it looks more natural I think. You are right that the bump map itself is not perfect, I used only a few quick filters to make it from the normal texture, as I was just seeing what bump maps can do.

If you look at the image without bump maps, you see that the front polygon (the one you look at), is a lot darker than the side polygon (the one that the sun is shining at). I think this is quite realistic looking at the shadow, but with the bump maps added there is hardly a difference between the front and the side. So that looks weird to me.
 
Perhaps you should use bump maps in combination with volume shadows?
Then the object would cast a shadow on itself and polys facing away from sun would not be lit.

Haven't tested it, tho.
 
I cant test the problem because i dont have bump maps on my object when i tried you put some.
Is there any special box to check in Gmax FsX material. I have validated a gray picture in Bump maps parameters. I have tryed to change the scale in "Other textuye info" area. The gay scale picture is very scharpen (black to white).
But the object is always "flat".
There is not more explanation in FsXmaterial.HTML file

Maybe an "enchanced parameter" to check ?

Marc
 
Hi Marc,

I cant test the problem because i dont have bump maps on my object when i tried you put some.
Is there any special box to check in Gmax FsX material. I have validated a gray picture in Bump maps parameters. I have tryed to change the scale in "Other textuye info" area. The gay scale picture is very scharpen (black to white).
But the object is always "flat".
There is not more explanation in FsXmaterial.HTML file

Maybe an "enchanced parameter" to check ?

No, I did not have to check any other options (except from adding the texture as bump map under the maps of course). Are you sure your bump map is correct? I am not sure if a grayscale images works fine.
 
2 bump maps in fx ??

Hi all.

One thing I did notice in the FSX demo that one of the bump textures did also use the alpha channel for what appeared to be another bump map.

I could be wrong but I commented at the time that one might be for in front of the plane and one for behind the plane.

When I was doing bump maps for Poser I remember someone commenting that something similar might be needed in Poser for body hair. ie a positive bump.


Steve
 
Hi all.

One thing I did notice in the FSX demo that one of the bump textures did also use the alpha channel for what appeared to be another bump map.

I could be wrong but I commented at the time that one might be for in front of the plane and one for behind the plane.

When I was doing bump maps for Poser I remember someone commenting that something similar might be needed in Poser for body hair. ie a positive bump.


Steve

Nope! The Alpha channel is simply what WAS in the Red channel that's been cut-n-pasted to the Alpha channel, before the Green chanel's contents are "Inverted" (note: I don't mean "flipped," I meand that the entire image is "photo reverse image," i.e. "Invert"ed...

Here is the reason why. Compressing the image results in severe degradation of the normal information: in fact, the RGB vectors aare no longer precisely 1 as they should be.

"There is another option, but it requires that your normal map be changed around a bit and also that your shader be edited slightly. DXT5 gives the most quality to the green channel and to the alpha channel. We can take advantage of this to "hijack" the DXT5 format and turn it into a normal map compression format. First we need to re-arrange the data in the normal map. Take the red channel data (X) and put it in the alpha channel. Now make the red and blue channels black. Now we need to adjust the shader to switch the data back around for us. The shader needs to be told that the red channel data is in the alpha channel of the texture and that it needs to calculate the blue channel values itself. This is possible with a little algebra because we can assume that the vector that results from R,G, and B will be unit length one. If you are able to make these changes to both the normal map and the shader, you'll get 4 to 1 normal map compression with very little quality loss!"
http://www.bencloward.com/tutorials_normal_maps12.shtml

ACES has written thier Shader to utilize this rearrangement of the normal map, which allows us to use DDS/DXT5 compression.

BTW, if you want to learn more about FSX's version of "bump mapping," understand that it's more commonly known as "normal mapping." Actual "bump mapping" is generally a gray-scale image with no Alpha channel. "Normal mapping" on the other hand is an entirely different concept.

There's a very nice article here: http://en.wikipedia.org/wiki/Normal_mapping that explains this in greater detail. From what I've read so far, it's not clear to me that ACES themselves have fully exploited the potential in their own examples.

I haven't taken the time to read this "tutorial" in depth yet, but it looks promising!
http://www.bencloward.com/tutorials_normal_maps1.shtml
 
Last edited:
Ah! Here's something I found that might be relevant to the issue at hand:

"Positive or Negative Y
When using Tangent Space normal maps, the most common difference in formats is the direction that the green channel is lit. Some programs light the green channel from the left (postive Y) and others light the green channel from the right (negative Y). Some programs give you the option to choose positive or negative Y. If your normal map isn't being lit correctly, the first thing that you should try is to flip the green channel. Just open the normal map in Photoshop, select the green channel, and choose "Invert." That will give you the same result as if you had rendered the normal map in the other format. "

http://www.bencloward.com/tutorials_normal_maps11.shtml
 
Interesting find, but for me inverting the green channel did not work. The shading on the model is still not correct. Can somebody confirm this?
 
the plot thickens!

check this out! I used the green channel control on the nvidia tools filter in photoshop, inverted x and y, and the lighting DID shift...its still not right, but it changed at least which suggests a solution is around the bend.

now the light is reflected differently, its overall darker, and the light is lighter off the East wall which it should and the south wall, which it shouldn't (at least the default doesn't), and the west wall and north wall is noticeable darker.
 

Attachments

  • invertxy-greenchannel.jpg
    invertxy-greenchannel.jpg
    42.7 KB · Views: 1,323
  • default dawn.jpg
    default dawn.jpg
    41.2 KB · Views: 1,368
I have made many tests to bump and the result is same. Problem with shading when pump map is selected.

I have detected somes problems in gmax material editor : checking or not the box change nothing in map roll-up, changing the amount change nothing to. If you have select a texture, the bump effect will alway appears in FS. If you want to delete it, make a new texture.
If you check a detailled texture, it don't be display, if you have put a bump texture before.
If you checked a detailled texture in a texture, the detailled texture will appears in all the over textures in the scene, but without effects in FS.

The rain effect is correctly work except if you have bump and detailled texture checked (check the box "use global environment as map as reflexion and try value of "reflexion scale"

More tests tomorow, maybe.
 
Hi,

I fixed the shading problem with the bump maps. Bill's post contained most of the information to solve it, I just had to read it a couple of times :).

What I did was the following:

  1. Create a normal map with the NVidia plugin
  2. Copy the content of the red channel to the alpha channel
  3. Make the red channel black
  4. Invert the green channel
  5. Make the blue channel white
  6. Save the result as DXT5 image

After that it showed up perfect on my object. Now I just have to learn how to make a good bump map to start with, so that I get a more realistic looking result in FsX :).
 
Hi,

I fixed the shading problem with the bump maps. Bill's post contained most of the information to solve it, I just had to read it a couple of times :).

5. Make the blue channel white

After that it showed up perfect on my object. Now I just have to learn how to make a good bump map to start with, so that I get a more realistic looking result in FsX :).

I'm happy that the information was useful. Making the blue channel white makes perfect sense, since that is - in fact - what all the bump maps that ACES created use. I just noticed that the article on DDS/DXT5 compression specified using "black" for the Blue channel, which apparently doesn't work well in FSX...

Since the whole operation depends on just how ACES wrote the shader code for calculating the normal's vector, we have no way of knowing whether they took the R and G vectors and added - or subtracted from the color in the Red channel to obtain the result... :stirthepo

It's an interesting exercise to load air_tb1_2.dds and air_tb1_2_bump.dds in Photoshop, then try to "recreate" their bump map from the diffuse texture, using the nVidea plugin...

I ran the same type "experiment" using ACES's default aircraft textures, since that's my primary interest of course.
 
More i test and less i anderstand.
Now i can have a detailled and bump-mapped texture in gmax, and the shading is correct, but ...

look the picture with a big cylinder for test. There is a z-sorting problem and the top of the cylinder is half transparent.

ma0001JWUOD17032007205506206123.jpg


the diffuse color texture is in dxt3 format 1024x1024 with alpha grayscale channel
the detailled texture is a 256 color, bmp format. 256x256
the bump-map texture is a 256 grayscale bmp format. 256x256

In gmax, i have first select the detailled texture and after had the bump map texture.
The 2 textures are in 256x256 pixels and the same scale is enabled in gmax parameter fxsmaterial.
I try to make some photoreal taxiways and it's useful to have a bump map texture on this because, when the rain effect is activate without bump-map, the ground look too glossy.
 
Yikes! There are too many boo-boos here to cover...

Suffice it to say that (a) you should be using only DXT5 compression 'cause you really do need the 8-bit alpha channel, and (b) bump textures must remain RGB format - "Greyscale" will never work, and (c) bump maps should be the same size as the diffuse bitmap, otherwise the subtleness is lost.
 
Hi,

I fixed the shading problem with the bump maps. Bill's post contained most of the information to solve it, I just had to read it a couple of times :).

What I did was the following:

  1. Create a normal map with the NVidia plugin
  2. Copy the content of the red channel to the alpha channel
  3. Make the red channel black
  4. Invert the green channel
  5. Make the blue channel white
  6. Save the result as DXT5 image



After that it showed up perfect on my object. Now I just have to learn how to make a good bump map to start with, so that I get a more realistic looking result in FsX :).

Arno,

Very old thread but I had a quick question, what command is the invert command above? Image->Adjustments->Invert?

Thanks

Shez
 
Hi,

That would depend on the editor you use I guess :). But you need to make sure to only invert the green channel, not the entire image.
 
Back
Top