FBX import. How to turn off import texture alpha to transparency?

The alpha channel is used in our game engine as a reflection mask. When importing FBX with textures, Blender automatically connects alpha channel in materials to transparency. In addition, all objects are displayed with transparency in the viewport. I have to manually turn off transparency in each material and set Alpha Mode to None on each texture. Is there a way to do this automatically or disable it when importing FBX?

Come on, why hasn’t nobody replied? I’m having this issue too.

Probably because I think it is not “natively” possible, there is no option in the import fbx to turn off the node routing of alpha channels.
I do not have the knowledge to do it but it should be possible to make a script that could help.

Edit: after a bit of thinking over, the import fbx is an addon, so maybe you could “hack” the python code a bit. (import fbx.py)
I am not a programmer but I have “dabbled” with some basic stuff (“hello word”) and also hacked a few simple scripts etc
in import_fbx.py (in blenders addons folder) search the parts that refer to alpha value and try to “Hash” them out to see what happens.
one line states “ma_wrap.alpha = alpha” thats a good one to start with!
Also.

" alpha = 1.0 - elem_props_get_number(fbx_props, b’TransparencyFactor’, 0.0)
if (alpha == 1.0 or alpha == 0.0):
alpha = elem_props_get_number(fbx_props_no_template, b’Opacity’, None)
if alpha is None:
alpha = 1.0 - elem_props_get_color_rgb(fbx_props, b’TransparentColor’, const_color_black)[0]
ma_wrap.alpha = alpha"

is defiantly related. If you hash out those sections you could be lucky.
If you get errors running the script the console should give you hints to other lines that relate to the ones you hashed out.

It would be a bit of trial and error so keep a backup copy of the script in case you break it! :laughing:

If you do not manage try starting a specific thread in the python support section, that is where the people who like python hang out.

1 Like

It works! :grin:
Replace your import_fbx.py with this one ( I was using 2.93.1)
import_fbx.py (135.7 KB)

The lines I hashed out now start with " # (Hacked by DNorman) "
( I feel like a criminal :laughing: )

Edit: keep a copy of the good one in-case you want to import with alpha one day!

1 Like