FBX re-import not updating UVs?

Trying to determine whether this is a) a bug, b) intended behaviour or (more likely) c) me doing something wrong.

If I re-import a mesh from an FBX file in doesn’t seem to update the UVs. This usually happens when I forget to create a separate UV channel for the lightmap. I have to delete the mesh from the project and import again from scratch to get the UVs to update. Can someone clarify if this is a bug please?

Thanks.

Which UV channel is not updating? 0 or 1? If it is UV channel 1, you probably didn’t unchecked “Generate Lightmap UVs” (under Build Setting in Static Mesh editor) so every time you get the same result for your lightmap UV channel (as the source channel is not changed). This checkbox has to be disabled when your mesh has Lightmap channel created in external 3D app.
Also make sure you’re not previewing wrong channel (it’s obvious, but I made such stupid mistake many times :slight_smile: )

Hope that helps.

If you forgot to add the second UV channel for the lightmap then when it reimports it will add the UV channel but it will not change the setting as far as which UV channel to use for the lightmap. It’s a simple fix, just open the static mesh and then change the Lightmap Coordinate Index to the correct channel.

That’s the problem - it doesn’t add the UV channel on the re-import. I did a quick screen recording of the problem;

[video]UE4: FBX not updating UVs on re-import - YouTube

Ok, that’s weird behavior. I followed exactly the same steps from your video and it works fine for me.

Hey,
I made a screenie for you…the problem comes from the fact that you changed the Light Map Coordinate Index to 0 (must be 1) under ‘Walkable Slope Override’ in your Static Mesh Settings…the engine keeps what you changed everytime you import your mesh, just take really care about these settings :wink:
57ecf037a59118335e15b10140d33c40cf282c89.jpeg

No, I understand that the Light Map needs to be set to the correct UV channel (UV 1). BUT what’s happening here is that UV 1 is not imported so I CANNOT set the light map to UV 1 as there is no UV 1.

On further experimentation it looks like neither UV channel is updated on reimport. I’ve saved the same object, this time with both UV 0 and 1; imported into Unreal - both channels are there (so far so good). Then going back to 3dsmax and altering the UV mapping, re-export to FBX, re-import into Unreal - neither UV channel is updated - they still retain the original UV mapping they had on initial import. The only workaround I have found so far is to delete the object from the project and import from fresh and then everything comes in as expected.

Be good to post this to Answerhub - thats Not Good

Done - https://answers.unrealengine.com/questions/360834/fbx-re-import-not-updating-uvs.html

Seems like there’s is a refresh BUG in the UE mesh editor;

Couldn’t see my second UV set until I closed the mesh editor, reimported the mesh, then reopened the editor and my second UV set was there.

old thread, but since googling led me here:
I had the same problem even in 4.21.

What finally solved it for me was to realize that there are TWO lightmap UV generation settings in the mesh editor:

One under “LOD 0 build settings”, and one under “Import settings”.
The first one must also be deactivated to update all UV maps on a reimport.
(And don’t forget to click “apply changes” in “LOD 0 build settings”)

Thanks rolffson, I was struggling to find the build settings.

Thank you!! This solved it for me! Gosh this needs reviewing! Surely this isn’t intended behaviour!

Anyone who stumbles across this thread and those solutions don’t work, make sure to double check that your file path’s match (where you’re saving from your 3d editor to and where UE4 is looking). I moved my files to a different dropbox folder and reimport was still looking at the old folder.

@rolffson “Apply changes” worked for me. Thanks. I suffered a lot for that before. I will keep this in my next time changing any import setting. :smiley:

:white_check_mark: Solution: FBX UV Maps Not Updating from Blender to Unreal Engine

:puzzle_piece: The Problem:**
You’re exporting your mesh from Blender to Unreal Engine using FBX, but when you edit your UVs in Blender and reimport the FBX into Unreal, the UV changes don’t show up.

Even if you reimport, restart, or even re-export the FBX with a new name — Unreal continues to display the old UV layout.


:brain: Root Cause:**
Blender allows you to have multiple UV maps on a mesh (e.g., UVMap, UVMap.001, LightmapUV, etc). When exporting to FBX, all UV maps are exported, and Unreal imports them as UV Channel 0, 1, 2, etc.

If your edited UVs are on a secondary map, but Unreal uses the first UV channel (UV 0) by default, your changes won’t show — even though you updated the file correctly. It will appear as if Unreal is stuck or broken, when in fact it’s just referencing the wrong UV set.


:white_check_mark: The Fix (Step-by-Step):

:magnifying_glass_tilted_left: In Blender:

  1. Select your mesh
  2. Go to the Object Data Properties tab (green triangle icon)
  3. Scroll to the UV Maps section
  4. You’ll see a list of all UV sets:
    • The top one is what Unreal reads as UV Channel 0
    • The camera icon marks the active render UV

:scissors: Clean Up:

  • If you only need one UV set:
    Delete all extra UV maps by clicking the button next to them
  • If you need multiple UV sets:
    Make sure the one you edited is at the top and is set as active (has the camera icon)

:floppy_disk: Export:

  1. File → Export → FBX
  2. Check:
    • :check_mark: Selected Objects
    • :check_mark: Apply Transforms
    • Forward: -Z Forward
    • Up: Y Up
    • Smoothing: Face

:recycling_symbol: In Unreal:

  1. Delete the old mesh (if needed)
  2. Reimport into a clean folder
  3. Open the Static Mesh and preview UV Channel 0 to confirm it matches your latest edits

:white_check_mark: Result:
Your UV edits from Blender now update correctly in Unreal, and you avoid all the frustration of invisible or outdated UVs caused by hidden or duplicate maps.


:light_bulb: Pro Tip:
Use a UV checker material in Unreal (checker or grid texture) to quickly see distortions or verify UV scale during asset testing.