Please fix FBX import with TEXTURES and materials

OK whining mode ON.

I have experimented with FBX and OBJ files so much - i tried to find a workaround like forever - but no luck. OK seriously -forget about OBJ - it’s a lame outdated format anyways, so forget about it.

But FBX is kinda DE FACTO standard. And import nearly never works with textures.

Yeah i know - there are 2 notable exceptions. One is to make models yourself in Blender and puzzle a bit with local and absolute paths and embedding textures and by magic it works. The second one is DAZ STUDIO. Yeah somehow most materials (besides eye cornea for weird reasons) import fine - with textures, transparency and everything.Wonders happen.

But honestly - most (Where’s the strikeout button)… SOME of us do go the cheap way and BUY models or even get them for free from generous people. FBX is a standard that worked for me in pretty much all applications.

I think the big problem with textures is the PATH. Yeah download some free models from 3DDD and such sites and you’ll always end up having the absolute path being like “C:\russianguy\coolTextures\wall.jpg” or so and the relative path being like “…\embeddedTextures\wall.jpg” or so. Pretty much all 3D programs can cope with one or the other, so whether i import these fbx models in Vue 2016, Blender or 3D max - they are fine. WITH TEXTURES.

Only UE4 seems to have some serious disability with Textures. And i never figured out what the problem actually is. But i suspect the path as i can’t think of much else. For some dumb 3D appz i can just make a path like in the fbx file absolute path and create something like “C:\russianguy\coolTextures\wall.jpg” and it works - in worst case. Some 3D appz can be fooled by just placing all textures in the same directory as the FBX file, completely ignoring all paths. And then there is UE4 -ignoring the absolute path, ignoring textures in the root folder, ignoring the relative path. Ignoring all textures whatsoever. Cool.

I looked at DAZ STUDIO FBX and noticed whats special is the last backslash being (incorrectly) actually an ordinary slash in the absolute path, like “C:\Textures/wall.jpg” -which is dumb but works for DAZ models. I tried to manually edit other fbx files like that, but no chance. So the problem must be something else.

So in a nutshell - PLEASE make FBX model import search the texture files in the FBX root path. Or obey the absolute path. Or relative path. SOMETHING! ■■■■, just import them!

Any workaround really appreciated.No kidding, but i read a dozen threads and tried so many things, but i never found that one workflow tha really fixed the issue. I even usedthe official autodesk FBX converter and it didn’t help at all. Well at least UE4 stays stubborn and always imports materials with just one stupid color vector, ignoring all textures, transparencies and everything if it can.

I also had some issues with animations and morphs, but oh well, if the texture problem is already solved imma forget about these, OK?

That’s going to be dependent on the software that’s exporting to FBX,

Honestly - if all other software i tried to import these files had no problems opening them WITH textures and materials then i doubt it is a problem of the exported format. Or just that pretty much ALL OTHER software is more forthcoming about texture locations… As i said - if file can’t be found then search the root (FBX file folder) for the files, then the workaround would at least be easy.

Huge fan of Daz Studio and been using it almost since version 1 as a replacement for Poser. Also been using Unreal 4 since day 1 as well and between the two I’ve noticed a consistent improvement in cross platform compatibility in maintaining the fidelity of the assets as exported by FBX and with each release of either continues to improve but even with flaws in the fidelity of the import I’ve never experienced any issues as to importing textures or losing texture paths using FBX.

Granted materials is still an issue but is being worked on via creating a “bridge” between targeted applications. Daz for example has a bridge to Zbrush,Maya,Photoshop, as well as Hex 2 as well Epic is working on Datasmith which at first glance looks like DCC bridging technology which will maintain fidelity of asset between all applications that uses the FBX server bridge.

Quick thing about FBX is it’s a true, and currently the only, true DCC wrapper that makes art content cloud base compatible that can move DCC between one application and another be it local or half way around the world in a transparent manner but until then does require the involvement of the end user to properly package their export as to the unique requirements of a given application.

So for sure I can say texture import is not an issue at least for me between DS and UE4 so I have to ask how are you exporting out of DS?

To take a guess that might help.

Daz Studio has two ways to export textures.

  1. Collect Texture To Folder will export textures to folder which will included the FBX file along with the textures into the same folder.

This could be where your losing your pathways as it’s only intended to make the textures available for other uses and is up to the user to rebuild the materials as to unique requirements of the application.

  1. Embed Textures will place all of the relevant textures into the FBX DCC package and is up to the target app to extract the texture package as to requirements to both texture paths as well as material construction.

If you are not exporting with this feature checked, or not set the FBX export version to the latest, then UE4 will not know how to rebuild the texture path.

In general though you should get into the habit of embedding working assets as your solution will only solve Windows based issues and lock out Linux and Mac. :wink:

Well as i said before - Daz Studio is THE notable exception for when it comes to FBX export. I’ve had problems with pretty much EVERY FBX file - minus the ones created from DS. Oh Well sometimes the cornea material gets messed up - but I’d still call it a perfect import (In the end you have to edit some stuff anyways). There are a few limitations - the more crapyou try to pack into the FBX file the worse it gets. Most notable bug is when you export an animation with PROPS. These stay static in UE4 even though the animation looks fine in DS Minor thing, jst don’t use props in animations. Oh and yeah trying to make a big animation and export it with morphs is a no-go - always screwed up my import. Also pro tip: to export several animations - do it in several FBX files and for the second, third, etc. one just import the animation and not the model. Works like a charm and is lightning fast.

No what i meant was the general “Any file not made with Daz Studio” FBX import that has been driving me nuts. Download any random FBX from the web and you get a 99% chance that materials and textures will not be imported into UE4. End of story. I just wish the developers would try that more often. If you buy 3D models from “somewhere” (Turbosquid or whatever) they will usually be made with maya or 3D max and NOT import fine. I spent so much time on this that I try to not use FBX from anything else but DS any more.

Well material construction has always been a pain but datasmith seems to be the big fix it all hammer and yes I agree that it’s up to the host app to extra usable assets.

Of interest Daz Studio has been updated to 4.10, which includes some nice feature additions like cloth, but there is now a a FBX bridge for Maya available for like 20 bucks.

I’ve encountered this exact same issue… when I export a Daz character as FBX and import it to Unreal, it works like a charm - almost all materials and textures are setup and ready to go.

I take the same Daz FBX file, import it into Blender. This also works well.

Then I try to use Blender’s FBX export. When I import that into Unreal, all the materials and textures have to be setup manually.

Derp.

The problem is there needs to be a better, and open standard, than FBX for 3d material .

FBX only supports these material types and doesn’t transfer settings.

  • Surface
  • Anisotropic
  • Blinn
  • Lambert
  • Phong
  • Phone E

There’s no for PBR materials, which for video game assets, is the closest thing to a modern standard material type. glTF is looking like it might be a solution, UE4 4.19, Substance Painter, and Blender it. There’s also a Maya exporter plug-in on Github Maya2glTF.

There is no one to one mapping of materials between UE 4 and some arbitrary 3rd party software. It’s an impossible task.

I might be missing something here but… why is it such a problem to import textures manually? Honestly, I think the auto-import of textures is mistake from the get-go and encourages many bad practices. Textures need to be configured, materials need to be properly set up. Whatever default UE4 spits out is 99.99% not going to work for your game.

It takes extra time, sometimes I drop a texture in a slot that isn’t for it just so it imports and already has a texture2D node in the material

Any app that supports PBR metalness maps pretty much 1:1 with Unreal.

When projects have hundreds to thousands of assets, that’s a lot of time.

I’m having this exact same problem myself. My co-worker set up a model in 3DS Max, exported as an .fbx, and sent the file and a folder with all of the .jpg textures. When I tried to import the file, all of the pieces come in properly (aside from Unreal’s insistence at keeping the pivot points at the origin of the original model, making the pivot I have to use way out in left field), but the textures do not. A bunch of materials are created in a variety of Easter pastels, and the naming conventions seem to be like what he made, but none of the image files are attached, forcing me to do it manually, even when I put the .fbx in the same folder as the textures when I import. Thankfully, the UVs are kept so I don’t have to figure out how to shift them around for the non-tiling textures, but it’s still a tedious pain in the butt. Bonus points: he’s on a PC, I’m on a Mac, so Dataforge is this beautiful, useless feature for me.

So am I understanding things right that I need him to click some Embed option when exporting?

No, there’s no way to import a hooked up material along with a model in UE4 using FBX.

Using glTF, 4.19, and the UE4 plugin for it, you can.