1

I want to send a model to someone who needs it in FBX format, but it has an AO map. Every tutorial I’ve been able to find says that you need to connect your BSDF shader to an overlay node with your albedo image and the AO map. However, FBX doesn’t allow overlay nodes and just deletes both of your maps if you try to export with it.

Is there any way within Blender to associate an AO map with an FBX file on export (so that the FBX file has a path to the AO file, the same as it does for the albedo/metallic/roughness/normal maps)?

RPaladin
  • 1,235
  • 1
  • 5
  • 17

3 Answers3

3

.fbx doesn't include textures. You can save the AO map as a separate image file and have the other person apply it to the mesh once they import the .fbx into whatever app they are using.

  • This link has more information on the pros and cons of .fbx files. https://www.threekit.com/blog/when-should-you-use-fbx-3d-file-format – CubeMelonClock Mar 08 '21 at 00:04
  • Yes, but if you import an FBX with separate images and appropriate pathing, it will connect all image textures to the BSDF automatically. This works great for most kinds of textures that don't absolutely require Blender nodes, but you can't use an AO map without one. Should I assume that anybody I send the AO map to will have to set it up manually on their end? – user2970690 Mar 09 '21 at 00:16
  • 1
    I'm not sure what app the other user is using; however, while .fbx files do not include texture information, the do include uvs. So assuming you unwrapped your object (you would have to to bake ao) all the other user should have to do is plug the ao map into their bsdf and it should appear correctly. – CubeMelonClock Mar 09 '21 at 03:58
  • I believe what the OP is trying to accomplish (same as myself at the moment) is to have an AO file associated with an FBX file when exporting that FBX file. Meaning that the .fbx would contain a path to the AO file the same as it does for the albedo/metalness/roughness/normal maps. Therefore when loading the asset via another program or api (assimp in my case) you can tell that the file has an AO and that it should be loaded into the engine. So while this answer may be a workaround for a specific case, it does not answer the core question. – nullReference May 24 '21 at 16:54
  • @nullReference The FBX exporter does not export an AO map. You can check what gets exported in the source code. So you'll have to convey it via a side channel, like the answer says. – scurest May 24 '21 at 20:58
  • @scurest Thank you for source link. This makes sense now. There's just no support in the fbx exporter for the AO map, making this answer the only thing one can really do. – nullReference May 25 '21 at 00:00
0

what I'll Suggest is you can plug the AO Map to an unused node like SPecular/ mettalic. It may change the imported shader in other software but you can embed the textures while exporting. Then after importing the asset you can change the slot to AO there.

0

FBX can embed textures.

Under Path Options, set Mode to Copy and click button on the right to embed.

Duarte Farrajota Ramos
  • 59,425
  • 39
  • 130
  • 187
daadaa
  • 1