Applying textures to CAD imports, UVs are massively scaled up

Hi All,

Odd issue here. When I export from Solidworks using IGS, and then import into UE4, convert the CAD to mesh and apply UVs as I understand they should be, when I assign a texture map, it’s showing as flat.

<SNIP>UPDATE: Per the thread below, the issue is as follows. When importing CAD models from various programs, the architecture is imported properly, however, UVs are applied incorrectly. To attach a texture, you need to set scaling at 0.02 for them to be properly applied. A ticket has been opened to address the original issue, here: Unreal Engine Issues and Bug Tracker (UE-64566)

If you’re affected by this issue, as some have noted in this thread, please vote to get this more visibility.<ENDSNIP>

Here are the settings I have for the mesh after it has been imported:

https://i.imgur.com/xXkpZvP.png

(Yes, I realize it’s upside-down. I’m still trying to improve on my workflow. LOL.)

…and here are the results after applying the same texture that appears on the wall immediately beside it. (The flat parts are the new ones I’ve imported, and the textured ones are walls I created using the brush and converted to meshes…

https://i.imgur.com/ZHnYP4n.png

Any idea what I’m doing wrong here? Am I missing a step? The UVs look correct to me, so I don’t see why the texture is having an issue. If it’s with the way the faces have additional unexpected wireframe (the connections on the face look wonky to me) is there a way to edit this in UE4? As far as I’m aware, while programs like 3DSMax have the ability to create and ‘unwrap’ UVs, I do not think Solidworks has this ability or function.

Thanks in advance!

1 Like

Why didn’t you load the Solidworks file directly into Unreal Studio? Why are you going through IGES? I’m not saying that is the solution, just wondering why IGES.

Hmm. That’s a good question. I’ll try that. I do know that when I attempted to import an assembly file of a different (downloaded) model, it showed me a blank image, but when I imported the separate parts, they appeared.

I uploaded the IGES as it seemed to be the format that worked best when uploading free downloaded models. I’ll definitely the native Solidworks part file and report back.

Edit: Sorry, I remember why I used IGES. I was concerned with the face imports, as when I had tried with a previous (again, different, and more complex model) it showed something like 7000 triangles on import. I read up on how Solidworks wasn’t great on 3D Modelling when it came to this, so I was hoping to cut down on the geometry when importing.

You can control the number of triangles when you import, using the tessellation settings in the Datasmith import dialog.
If you increase the chord tolerance, max edge length and normal tolerance values, you can reduce the level of complexity in the generated mesh.

https://docs.unrealengine.com/en-us/Studio/Unreal-Datasmith/Datasmith-Software-Interop-Guides/Using-Datasmith-with-CAD

That’s awesome, thank you! I’ll read up on how to import my previously impossible models!

Here’s the part, reimported as a native SLDPRT file from Solidworks. As you’ll note, there’s still no joy:


For reference, here’s a view of the same texture applied to a brush-to-mesh conversion, for which I used the same conversion process:


So, I’m still stuck, it would seem. I can detail my process with screenshots, if that may help to figure out what’s happening here. If anyone is having a different result when importing Solidworks Models, I’d love to see their process!

Thanks again!

OK, so. I have figured out the cause of my problem, which leads me to believe either a) I am importing my Solidworks models incorrectly or b) Unreal Studio is importing my Solidworks Models incorrectly. :wink:

I tried multiple textures on the imported model, and noticed that when I applied shiny or chome textures, they looked almost identical to counterparts applied to actual meshes… …sort of. They looked a bit cloudy to me, and I recall seeing this happen when the textures were scaled up or down. So, I tested some settings with my textures, and finally got this result:


As you can see, my textures are now looking more like the original application to meshes. But, here’s the problem:


That’s right. I’ve scaled the texture down to 0.01, so this tells me that the imported parts are EXTREMELY compressed and this is causing the textures to appear smooth when running at a scale of 1:1.

So, my question is this: are there settings that I can use to meet the requirements so that my textures applied to my imported parts will match perfectly with those applied to actual meshes with no scaling? (I will likely be mixing imported parts - converted to meshes - with actual meshes, so if I have two such parts side-by-side, I need to be certain that they will look proper, and not have a hard edge where the textures meet up.)

Oh, Unreal Gods, please point me in the right direction! I’M SO CLOSE!!!

Thanks for listening and helping out!

This happens to a few CAD file types. Someone explained it somewhere around here, but I can’t seem to find it now. The UV’s are getting scaled for some reason, if you look at UV0 on the static mesh you’ll see what I mean. The work-around you are doing is basically what I usually do to get around it. You can also use world aligned materials to bypass it as well if you have issues with seams.

To clarify, its just the UV’s that are getting scaled, not the mesh itself. I’ve never seen any issues in the size of the mesh itself.

Yeah we also have a texture scaling problem with Revit models exported with Max sometimes, same scaling multiplier.

That seems to be a fix, but I wouldn’t say it’s a solution. (Especially if Epic fixes it in the future, we’ll have a devil of a time going back through and changing every texture scaling issue when it suddenly pops back into proper function.)

I would, personally, consider this a pretty significant bug with the import functionality. It’s certainly not as bad is if the actual mesh were being improperly sized, however, the two factors - mesh and UV - are directly connected, so you would expect to have a direct 1:1 correlation.

Speaking to this, Epic (, possibly, if you’re still following the thread) is this something we should open a bug report for? Is it actively on a list already, somewhere?

Thanks again for the support on this!

Report Unreal Studio bugs here: https://unrealstudiohelp.epicgames.com/s/article/How-do-I-report-a-bug

I did that this afternoon, and am happy to report that one of the support techs has already reached out for some sample files. That’s some great service you have there, sir. I appreciate it!

I will continue to update with any progress I’m allowed to share!

Thanks again.

Please report your bugs. Just think how much better the product could be if people simply reported their bugs as they come across them. We want to get things right and we don’t see that many bugs posted so far.

I cannot agree enough! Considering that there have been two posts in this thread already with the same issue, getting the bug reports in so that issues can be identified and addressed is very important. I definitely commend the developers who are finding workarounds, as I believe they have already done some of the legwork towards a solution. (Kudos, guys!)

Bugs are one thing, but what’s preventing us from attempting further Unreal use is still the workflow. I haven’t tried the latest version, but are imports put into their own Blueprints yet, or still just spammed straight into the current map? And are proper hierachy operations in yet?

I asked for import to BP functionality (like fbx) some time ago. It’s very useful to be able to do this. They refused and instead suggested workarounds. These workarounds are hindered by the lack of hierarchy operations that you rightly point out.

Back on topic, a ticket has been opened to address the original issue, here: Unreal Engine Issues and Bug Tracker (UE-64566)

If you’re affected by this issue, as some have noted in this thread, please vote to get this more visibility.

Thank you!

re: BP imports
@pf_breton is the expert, but he has stated that the problem with BP imports right now is that this turned out to be a less than reliable workflow. Until that get’s addressed, it would create a lot of headaches for a lot of users if we defaulted to that mode. As soon as that can be shown to be reliable for the complex datasets that people are throwing at UE4, then we can provide the option. Yes, BP import does work in some cases, but it also doesn’t work in a lot of other cases and there is no method of predicting this.

Sorry to dig up an old thread, but I checked the ticket and it says it still has not been addressed. Is there any way to get an update on this? It has been 2 years now…

1 Like