Datasmith Feature Requests

I’d love to be able to load PDF data in too. I guess you’d need a PDF reader that could generate bitmap data for a texture at runtime. It’s definitely possible to load in a folder of JPGs etc and use those dynamically. I wrote some C# functionality for that a while back using USharp to run the code in UE4. Adding the PDF conversion too would be a cool idea.

Are there plans to improve the Python API reference, to match the more recent features of the Dataprep asset? Would be nice to have those in relative feature parity. As far as I can tell the more recent features of Dataprep aren’t covered by the API: Search — Unreal Python 4.26 (Experimental) documentation.

Also speaking of the Dataprep asset, attempting to view Metadata to filter assets is nearly impossible through the Dataprep window—UI needs some adjustment.

Dataprep Commit seems to add everything back into the current level, which is annoying if you’ve made changes. Datasmith has an option to not respawn deleted actors, but Dataprep doesn’t seem to have this?

Also, the result from the Dataprep Commit does not have the white balls on empty actors that the result from a straight Datasmith import has (which is preferrable actually, so I’d rather hope that when you drag a Datasmith scene into a level in the future the white balls will be hidden for it as well).

Once a Dataprep Commit has been made, I believe the intended workflow is to then update the scene through the Datasmith Asset Dataprep > Update Datasmith Scene(s). From my experience, this then works as expected.

I have recently been working with some very large Revit files. My workflow has been to break the model into 20 sectioned views in Revit and export them individually to Datasmith files. I have then created an editor utility that imports each view to a new streaming level. These can then be streamed in and out at runtime in UE4.

Unfortunately, each separate Datasmith file creates its own Geometry, Materials and Textures folder. This means that even though assets are actually shared between views, each brings its own copies.

It would be great to have a feature to allow multiple Datasmith files to share the same asset folders in unreal. On Datasmith import it could skip creating any duplicate assets and use the existing ones from the folder. This would both increase performance and make further data prep much easier.

As a bonus, it would be amazing if the Revit exporter could export multiple Revit views at once (perhaps a gui to select which views to export?)

Dataprep only has a “filter by volume”… but how do you know the volume of your objects in the dataprep window?

I can only see an “approx size” for the entire import, and even then, I have to manually multiply those three value together to get a volume.

It would be nice to get the volume directly in the interface, and also be able to select and isolate individual objects in the view.

(Also, if it will end up with a blueprint paradigm, and not stacks, it would be nice to see what rules affect what objects, like you can with the line highlights when pressing play.)

Visual dataprep should allow you to select multiple datasmith input files and put it through one pipeline. It will only give you one Datasmith object at the end however the generated content should share materials (not sure if instancing works between files eg multiple Revit files each using the same chair family)

Now that Rhino improvements have been made can we look forward to better Solidworks importing on the roadmap?

I’m a bit puzzled by this:


If I search this forum, I can find a number of users asking for how to import Datasmith hierarchies as blueprint (actors), but the number of users asking for how to import them as a level seems to be zero…

…was there a large architecture firm behind the scenes who wanted to do level streaming on their huge middle eastern projects, I wonder? :slight_smile:

EDIT: Also, that level is not open, and I cannot delete it. What is going on?


Why the Data smith geometry imported now comes with it own post procession volume??
It took me a couple of day to figure out that, after each import my scene got black and I could figure out why. also when you do a search those volumes don’t show up you have to scroll in the outliner to find them.

Hi fco3d,

It sounds like you are using 3dsMax to generate your datasmith files : if that is the case, you can remove post process volumes from the max datasmith export by going in your “Rendering” settings, then “Exposure Control”, and finally switching the exposure control preset to “<no exposure control>”.

You can then export your scene and the post process volume will not exist anymore when the datasmith file is imported in the engine.

Thank you for the explanation.
Now I wonder what was the thinking on making this a default feature??
Is the lighting inside Unreal the same as what I would get inside 3D Max with V Ray renderings?? is that why?

You can read directly pdf in cef, by recompiling source code for cef part.
I don’t have experience with specific plugin creation, but I used that procedure last year and works well.
or you can setup a small web server with pdfjs or js reader and setup that in web browser
​​​​​​First option is better of course.
It would be nice to create a small plugin with pdf reader (maybe starting from cef, like blui).

I found my old video on LinkedIn:…212951552-nrOm


Alternatively you can setup as said in this topic [Credits to user eray_ozr]:…th-web-browser

Please also have a look to latest BLUI version:

It supports natively PDF rendering, and seems best method to do everything.

Credits obviously to @getnamo

PS: I have some problems to figure out to compile an exe version with this plugin included. If anyone has ideas howto, would be really pleasant.

  • I have several models in a .udatasmith file
  • After import, I use “convert selected components to blueprint class”

Now I want to update some of my models…

  • Regardless if I use Datasmith or Dataprep, the entire scene is re-spawned in the level
  • Now I have to delete it every time and ignore these “break reference” warnings.
  • Also, in my blueprint actors, meshes not present in the update remains, which means they’re not cleaned out from the content folders either.

It’s a super annoying workflow! :frowning:

EDIT: Just now also discovered that despite me attempting to clean out static meshes that I removed, I still get this BUT ONLY ON A SHIPPED PACKAGE of my project…


EDIT: Ok, so I just deleted all datasmith imports (except the dataprep asset), cleared out all datasmith actors and static meshes from my blueprints, re-imported everything again, and re-did the whole convert to blueprint and copy components dance detailed above, and still I get this…

LowLevelFatalError [File:Unknown] [Line: 2598]
Missing import of (/Game/CRPG/Levels/Dungeon/Sewers): DatasmithActorTemplate_51 in Package /Game/CRPG/Blueprints/Tiles/Dungeon/CellarCorner was not found, but the package exists.

It seems that Datasmith/Dataprep imported geometry and actors, converted to Blueprint actors, can’t handle being copy pasted into existing Blueprint actors with custom classes? That’s quite a limitation if so…

EDIT: This seems to be a blueprint nativization bug! Possibly (since I’ve talked to folks and I see other issues popping up as well) related to this, although I’m still seeing it in preview 6…

I would strongly suggest some workflow improvements for partial updates. Unless I’m being really dense and I’m missing something very obvious, when you make changes only to a few elements on the model you need to export the entire datasmith file again (which can take north of 15 minutes for really large projects)

The only way I found of speeding up that process is by splitting the model into several datasmith files, which is definitively not ideal and rather error prone if you’re not extremely meticulous.

That makes it really difficult to work with datasmith when iterating on the project design, something that is very fast and straightforward with Lumion and (to a slightly lesser extent) TwinMotion.

Compliments for the way Datasmith evolved over the years. I tested it in the beginning but it didn’t work for me at that time and I stuck to a fbx workflow. Its much better now.

Requests for SketchUp;

  • export selected
  • reuse the groups names from SketchUp for the geometries in UE so you can use the names (filter contains) in the actions when using dataprep. At the moment nicely named objects in SketchUp are converted to group_1 group_2 etc.

We’ve looked into this and whilst it looks good, it doesn’t currently work building to Hololens2

Hi David,
I solved with this one

Have a look

@FrankiePibbs - Thanks we’ll take a look at your plugin again for this as I believe previously HL2 wasn’t working as expected.

We are also interested in how we could replicate a browser window to multiple users - (not just the URL) - if anyone has had any thoughts on this. We’ve struggled with how this may replicate as you can’t replicate the texture every frame etc as that would really strain the replication system.

  • anyway perhaps this musing is better directed outside of the DataSmith forum!