• 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.

MCX and PBR texture slots?

Messages
383
Country
unitedkingdom
why do you need to invert the normal map?

There looks to be a flip normal Y in the savings options.
 
Last edited:

Pyscen

Resource contributor
Messages
2,993
Country
us-texas
Hello...

@stevo

Materialize v1.78 doesn't have the means to do a "bump" map (-RedInAlpha). It also doesn't have the means to convert a Metallic map completely because of Smoothness texture. Both require an alpha channel. Unless you have the means to program the additional channel (alpha) within Materialize (It is a free source application). That what Manochvarm was referring to, I believe.

Though @MANOCHVARMA RAMAN, you can place the finished metallic & AO maps in their destinated channel slots (Red and Green). Then outside of Materialize, such as GIMP or Photoshop, to place the Smoothness texture into the Alpha Channel. You could place the Smoothness texture in the Blue Channel, then through Photoshop or GIMP move the Smoothness texture out of the Blue channel into the Alpha Channel and Invert or color the Blue channel "Black". The Normal map will need to be converted through the plugins of GIMP or Photoshop (to convert it to a "Bump" map). Of course, you could still go through Imagetool (again, to convert it to a "Bump" map).

Sorry, Manochvarm for not mentioning or talking about Materialize through PM,... I was already late for work at the time.
 
Messages
442
Country
malaysia
Though @MANOCHVARMA RAMAN, you can place the finished metallic & AO maps in their destinated channel slots (Red and Green). Then outside of Materialize, such as GIMP or Photoshop, to place the Smoothness texture into the Alpha Channel. You could place the Smoothness texture in the Blue Channel, then through Photoshop or GIMP move the Smoothness texture out of the Blue channel into the Alpha Channel and Invert or color the Blue channel "Black". The Normal map will need to be converted through the plugins of GIMP or Photoshop (to convert it to a "Bump" map). Of course, you could still go through Imagetool (again, to convert it to a "Bump" map).
Yes, we can do that.
Sorry, Manochvarm for not mentioning or talking about Materialize through PM,... I was already late for work at the time.
That's ok :)
 
Messages
383
Country
unitedkingdom
Pyscen said:
You can place the finished metallic & AO maps in their designated channel slots (Red and Green). Then outside of Materialize, such as GIMP or Photoshop, to place the Smoothness texture into the Alpha Channel. .

As Pyscen has said its a good starting point to get the required PBR textures from a single image, especially if you're doing it manually. The saved textures could then be post-processed in Photoshop, Gimp, etc for the specific R,G,B,A arrangement which isn't that difficult to do. You'd need to know which normal map it is outputting, P3D uses a DirectX normal map so if your normal map is inverted (OpenGL normal map) then assume that's what the invert Y axis is for.

Just spend 30 minutes doing this example of a chainlink fence in P3D.

I only used 3dmodeling program, Materialize and photoshop, exporting as DDS through the nvidia .DDS plugin

A downloaded texture was used in materialize to create the Normal, Metallic and Smoothness (with a bit of trial and error). I saved them out and opened them in Photoshop. I created an alpha channel from the Diffuse, then created the Metallic map, metal in the Red channel, Smoothness in the Alpha (I inverted the Smoothness)

2.jpg



1.jpg


So after Photoshop adjustments I ended up with

Diffuse (albedo) with Alpha channel formatted to DXT3

Metallic with metallic in the Red channel, Green channel made white, blue channel made Black and Smoothness in the Alpha (which I inverted otherwise it didn't look correct) formatted to DXT3

Normal map (bump) as exported from materialize, then moved the Red channel to the Alpha channel and made red channel Black formatted to DXT5

Material setting I set blend mode to translucent

Note: the smoothness in materialize is not the same smoothness as in P3D it is a roughness map not a glossiness map as far as i have tesed so would need inverting in photoshop.

Stevo ;)
 
Last edited:
Messages
442
Country
malaysia
As Pyscen has said its a good starting point to get the required PBR textures from a single image, especially if you're doing it manually. The saved textures could then be post-processed in Photoshop, Gimp, etc for the specific R,G,B,A arrangement which isn't that difficult to do. You'd need to know which normal map it is outputting, P3D uses a Direct3d normal map so if your normal map is inverted (OpenGL normal map) then assume that's what the invert Y axis is for.

Just spend 30 minutes doing this example of a chainlink fence in P3D.

I only used 3dmodeling program, Materialize and photoshop, exporting as DDS through the nvidia .DDS plugin

A downloaded texture was used in materialize to create the Normal, Metallic and Smoothness (with a bit of trial and error). I saved them out and opened them in Photoshop. I created an alpha channel from the Diffuse, then created the Metallic map, metal in the Red channel, Smoothness in the Alpha (I inverted the Smoothness)

View attachment 47792


View attachment 47793

So after Photoshop adjustments I ended up with

Diffuse (albedo) with Alpha channel formatted to DXT3

Metallic with metallic in the Red channel, Green channel made white, blue channel made Black and Smoothness in the Alpha (which I inverted otherwise it didn't look correct) formatted to DXT3

Normal map (bump) as exported from materialize, then moved the Red channel to the Alpha channel and made red channel Black formatted to DXT5

Material setting I set blend mode to translucent

Note: the smoothness in materialize is not the same smoothness as in P3D it is a roughness map not a glossiness map as far as i have tesed so would need inverting in photoshop.

Stevo ;)
Nice finding!

As per the reference of Wiki for Normal map creation,

Here are the steps you need to take:
  1. Copy the content of the red channel to the alpha channel
  2. Make the red channel black
  3. Invert the green channel
  4. Make the blue channel white
 
Messages
383
Country
unitedkingdom
Those steps are more from FSX days, if you already have the correct orientated normal map (DirectX), then you don't need to flip the green channel (that is the same as using the flip Y option in materialize). Obviously if you where to flip the Y in materialise then save the Normal map then flip it again in photoshop you'd be back where you started from...lol.

From what i understand if you have say an OpenGL normal map (X-plane uses this) the Y channel (green) is inverted compared to a DirectX normal maps so if you wanted to use them in P3D (DirectX normal map) then you would flip the Y channel. If you already have a DirectX normal map then flipping the Y channel would give you an OpenGL normal so the normal would not show correctly in P3D.
28-normalmap-examples-001.jpg


I generally just copy the red to the alpha channel and make the red channel black, then have a look in the sim, if it looks incorrect I flip the Y (green) channel.

Stvo
 
Messages
442
Country
malaysia
Those steps are more from FSX days, if you already have the correct orientated normal map (DirectX), then you don't need to flip the green channel (that is the same as using the flip Y option in materialize). Obviously if you where to flip the Y in materialise then save the Normal map then flip it again in photoshop you'd be back where you started from...lol.

From what i understand if you have say an OpenGL normal map (X-plane uses this) the Y channel (green) is inverted compared to a DirectX normal maps so if you wanted to use them in P3D (DirectX normal map) then you would flip the Y channel. If you already have a DirectX normal map then flipping the Y channel would give you an OpenGL normal so the normal would not show correctly in P3D.
View attachment 47798

I generally just copy the red to the alpha channel and make the red channel black, then have a look in the sim, if it looks incorrect I flip the Y (green) channel.

Stvo
Sorry, I’m confused . So, Materialize normal map is already flipped Y? Is it DirectX?
 
Messages
383
Country
unitedkingdom
I used it as it was exported from materialize so I would guess it is DirectX.

I wouldn't worry to much about which one you are using as long as it looks correct to you, (I'm looking at a normal map from the perspective of creating it in one go from a model and not creating it by hand or from a Texture as we have discussed here, so as long as it looks correct it is correct)

Make two of the same models, one with the Y flipped on the normal map examine the difference it should be easy to tell which one looks right.
 
Last edited:
Messages
383
Country
unitedkingdom
Here's my Chainlink test in X-plane also

x-plane.jpg


Changes I made for X-plane using the same textures I exported previously from materialize....

X-plane uses Albedo and a Normal map at an objects basic level.

Albedo,
if saved as a .PNG, it needs to have a transparent background when used with an Alpha channel (haven't tried .DDS)

Normal map,
X (Red) and Y (Green) channel is the normal part of the map, I flipped the Y channel (Xplane uses OpenGL and only uses the X and Y channel of the normal map when utilising PBR. I read that the Z channel is determined within Xplane at render time)
Blue is base reflectance (Metallic) and Alpha is Roughness (although seems to be a glossiness to me)

This was the .Obj file.....Areas in red are what was added (If i didn't add the no_blend the alpha channel edge was jagged, Normal_Metalness and GLOBAL_Specular 1.00000 are required to active the PBR.)

I
800
OBJ

TEXTURE Fencetest.png
TEXTURE_NORMAL Fencetest_normal.png
BLEND_GLASS
NORMAL_METALNESS
GLOBAL_no_blend 0.50000
GLOBAL_specular 1.00000


POINT_COUNTS 8 0 0 12
VT 0.00000 -0.00043 2.40000 -1.00000 -0.00000 0.00000 5.01826 -1.90166
VT -0.00000 2.39957 2.40000 -1.00000 -0.00000 0.00000 5.01826 2.94745
VT -0.00000 2.39957 -2.40000 -1.00000 -0.00000 0.00000 -5.02634 2.94745
VT 0.00000 -0.00043 -2.40000 -1.00000 -0.00000 -0.00000 -5.02634 -1.90166
VT 0.00000 -0.00043 2.40000 1.00000 0.00000 0.00000 5.01826 -1.90166
VT -0.00000 2.39957 2.40000 1.00000 0.00000 0.00000 5.01826 2.94745
VT -0.00000 2.39957 -2.40000 1.00000 0.00000 0.00000 -5.02634 2.94745
VT 0.00000 -0.00043 -2.40000 1.00000 0.00000 0.00000 -5.02634 -1.90166


IDX10 2 1 0 0 3 2 4 5 6 6
IDX 7
IDX 4


ATTR_no_blend 0.50000
TRIS 0 12

Stevo

P.S I've just realised this is well off topic from the original purpose of the thread I shall digress....
 
Last edited:
Messages
442
Country
malaysia
Here's my Chainlink test in X-plane also

View attachment 47815

Changes I made for X-plane using the same textures I exported previously from materialize....

X-plane uses Albedo and a Normal map at an objects basic level.

Albedo,
if saved as a .PNG, it needs to have a transparent background when used with an Alpha channel (haven't tried .DDS)

Normal map,
X (Red) and Y (Green) channel is the normal part of the map, I flipped the Y channel (Xplane uses OpenGL and only uses the X and Y channel of the normal map. I read that the Z channel is determined within Xplane at render time)
Blue is Metallic and Alpha is Smoothness

This was the .Obj file.....Areas in red are what was added (If i didn't add the no_blend the alpha channel edge was jagged, Normal_Metalness and GLOBAL_Specular 1.00000 are required to active the PBR.)

I
800
OBJ

TEXTURE Fencetest.png
TEXTURE_NORMAL Fencetest_normal.png
BLEND_GLASS
NORMAL_METALNESS
GLOBAL_no_blend 0.50000
GLOBAL_specular 1.00000


POINT_COUNTS 8 0 0 12
VT 0.00000 -0.00043 2.40000 -1.00000 -0.00000 0.00000 5.01826 -1.90166
VT -0.00000 2.39957 2.40000 -1.00000 -0.00000 0.00000 5.01826 2.94745
VT -0.00000 2.39957 -2.40000 -1.00000 -0.00000 0.00000 -5.02634 2.94745
VT 0.00000 -0.00043 -2.40000 -1.00000 -0.00000 -0.00000 -5.02634 -1.90166
VT 0.00000 -0.00043 2.40000 1.00000 0.00000 0.00000 5.01826 -1.90166
VT -0.00000 2.39957 2.40000 1.00000 0.00000 0.00000 5.01826 2.94745
VT -0.00000 2.39957 -2.40000 1.00000 0.00000 0.00000 -5.02634 2.94745
VT 0.00000 -0.00043 -2.40000 1.00000 0.00000 0.00000 -5.02634 -1.90166


IDX10 2 1 0 0 3 2 4 5 6 6
IDX 7
IDX 4


ATTR_no_blend 0.50000
TRIS 0 12

Stevo

P.S I've just realised this is well off topic from the original purpose of the thread I shall digress....
Thanks for the info. Now I got it.

Summary:
Materialize is using DirectX.
X-Plane uses OpenGL. Therefore, if the normal map is created from Materialize, we need to flip/invert the Y (Green channel).
P3D uses DirectX. Therefore, if the normal map is created from Materialize, we don't need to flip/invert the Y (Green channel).
 
Top