Custom materials' COMP textures - needs explanation!

The SDK has the following statement regarding the comp textures for diffuse_code materials:

    • Normal Roughness Metal: Normal in GA (as XZ packed), B: roughness, R: metalness. Please note that the metalness in not apply on the ground.

Everybody including me read it as “put normal’s red to comp’s green and normal’s blue to comp’s alpha”, but that just doesn’t work. Albedo texture alone works fine but as soon as I plug in the comp texture it all goes crazy. Here is my Substance preset I am using:

image

I tried different sizes/bitsizes - it just doesn’t work. Asobo, please explain what was meant under “XZ packed” statement.

Albedo only:


Comp added:

Hmmm… Just realized that this works ok with the polygons, but doesn’t work with aprons. Definitely a bug.

Do you know if this was solved. I ran into this problem yesterday

Could you please reference exactly where in the SDK you’re reading this?

I can’t find any reference to diffuse_code, nor can I find a reference to the term XZ packed or any of the other terms you are using in any of the Material definition sections of the SDK.

I’m going to assume you’re not talking about FSX comp definitions, that you’re reading this from the MSFS SDK, and that diffuse_code textures are different from those textures used everywhere else in the sim (aircraft, etc.)?

I assume you know this, as far as I can find for all material definitions in MSFS,

Red = Ambient Occlusion
Green = Roughness (white is rough, black is smooth)
Blue = “metalness” (White is metal, Black is matte-ish, not metal)

As far as I can find in the SDK, alpha is used for transparency (alpha cutoff value). They also say that ambient occlusion should be 16 bit.

It looks to me that with Comp added, your texture became transparent, likely because you set the alpha to a transparent value throughout?

Of course, everything I just said could be wrong if I’m referencing the wrong material definitions… So, I’m wondering where you found the definitions you’re saying in the SDK.