No announcement yet.

Leaf references in UE5

  • Filter
  • Time
  • Show
Clear All
new posts

  • Leaf references in UE5


    I'm trying to get the leaf reference data when importing into UE5, but all it seems to do when importing the fbx I exported out of Speedtree is just give me the treetrunk and branches as one separate asset on import and all the leaves as their own separate asset.
    When consequently dragging the assets into viewport, I would just get everything at origin instead of having the individual positions and rotations of the leaves on the branches like in Speedtree.

    Am I missing something perhaps? Or does this data only exist for use in software like Maya? Is there a way to get this data into UE5 as an array cache of transform variables?

    Last edited by Lawless; 04-26-2023, 03:47 PM.

  • #2
    Hello Lawless

    Thanks for reaching out!
    Leaf references are part of static mesh export, not games export. The modeler prepares the model for real time rendering when exporting for games (batching/merging geometry, etc). Leaf Hierarchy creates null objects that would be hard for the FBX unreal importer to interpret.

    Let us know if you have further questions!


    • #3
      Hey Genevieve,

      Yeah I can understand the obstacle for importing that through FBX, however none of the other export options really support a clean leaf hierarchy export workflow into Unreal engine. With Nanite commanding higher triangle count meshes these days, memory management is of concern to console platforms.
      If we could get the information easily, it would be possible to instance the small leafage and reduce the footprint significantly.

      USD importer seems to recognize the leaf reference data as a PointInstancer type, however the code there doesn't really know what to do with it and the only other format that seems to be workable is XML, though the format of the data there isn't really usable without some parsing.
      Could Speedtree provide maybe a way to export the leaf references to csv directly? Using the Unreal format of transforms for position(X=0.000000,Y=0.000000,Z=0.000000), rotation(Pitch=0.000000,Yaw=0.000000,Roll=0.000000 ) and scale(X=1.000000,Y=1.000000,Z=1.000000), rather than the separate x, y, z data like in XML?
      It would allow for it to be directly loadable into datatables so we can access it in BP? The other data such as MeshID seems fine as an integer column.