How to move painted foliage to another level?

Hello. We are using world composition in our project. But it seems to have too much foliage instances. So we are thinking to move the foliage to separate levels for eventual streaming. The problem is - we don’t know how to achieve that, by default it goes painted on some surface, and if that missing, there will no foliage at all. Any suggestions?

Hi!
I have the same problem in my project…
Waiting Epic to answer…

In the foliage tool, click the third icon down “The selection tool” then under actions click “Select All”.

252087-92e2062e19f41392793cd7663dba16ed.png

Now in the levels display

252088-6fbcfd52886f89d6e1649d36d859ea0d.png

Right click on the level you want to move the foliage to and select “Move all selected foliage to level”.

252089-untitled-1.png

You will then have to save all the foliage types again and your done.

6 Likes

Does anyone know why it is re-saving the foliage types? When I try to move foliage to a different level in 4.25.3, it goes through every type of foliage, asks for a location for the foliage asset and then reports an error that the foliage asset already exists and the foliage is not moved to the selected level.

2 Likes

Any idea how to do this between 2 different projects that don’t share the same level? I’ve tried migrating a level between projects, but am unable to import successfully. The only thing that’s missing at this point is the painted foliage.

Any help would be greatly appreciated.

1 Like

I know I’m two years late to this but

Follow the instructions by ViviDDesign, but in this way:

  1. Create a blank new level within the project that has the foliage you want to transfer. Name it “FoliageOnly” or something.
  2. Drag that level into the Levels Display
  3. Select all your foliage as described in Foliage mode
  4. Right click and select Move Selected Foliage to Level
  5. Save all
  6. Right click the new level > Asset Actions > Migrate
  7. Deselect all dependencies you won’t need, click OK
  8. Select the Content folder of the project you want to migrate your foliage layout to, and execute the task.
  9. In your other project, open the FoliageOnly level
  10. Drag the level you want to transfer your foliage to into the Levels window, same as in step 2
  11. In Foliage mode, select all your foliage again
  12. Right click the target level in the Levels window and select Move Selected Foliage to Level
  13. Save all
  14. Open your target level, enjoy~
1 Like

Thank you so much for this! Super helpful

sorry where is the Level Display??? I’m using unreal engine 5.2 so things look really different but I can’t seem to find anyone else having the same problems on here.

3 Likes

The “Level” window doesn’t work with world partition unfortunately.

The good news is that there are these two folders inside the content folder:
image

They contain every file used by “OneFilePerActor”, so you can just copy the InstancedFoliageActors across the folders.

If you want to copy just the correct files you can get the name with this option on the right click:

It should return something like this:
C:/YourProject/Content/__ExternalActors__/Maps/MapName/MapName/5/F6/XYCNN57880XXECQHQSF9ST.uasset

I’m glad I found this workaround because I spent many hours painting the foliage and I didn’t want to waste them :sweat_smile:

@Ares9323 Once you have the path of the InstancedFoliageActors, what are you then doing with it? The .uasset file has references to the original level it was created in so it doesn’t seem to be as simple as being able to copy and paste the asset from one folder to the other.

To be honest, I’ve just copied it to the other folder and it worked!
I also thought that it wouldn’t have worked, I tried that as a last resort and fortunately it worked!

@Ares9323 Thanks for the reply. Doesn’t seem to work for me unfortunately. In your example

C:/YourProject/Content/ExternalActors/Maps/MapName/MapName/5/F6/XYCNN57880XXECQHQSF9ST.uasset

If you wanted that to then be contained in a different map, where are you pasting it exactly and are you including the preceding folders (the “5/F6” of the path) or just the .uasset?

Also are there other steps required (like those outlined by @ninthtale above) in order for this to work or is it just this step?

You’re right, I should have mentioned that! I copied the exact folder hierarchy, for example from OldMapName/MapName/5/F6/XYCNN57880XXECQHQSF9ST.uasset to NewMapName/MapName/5/F6/XYCNN57880XXECQHQSF9ST.uasset.
In my case the F6 folder was already present because I was transferring foliage from an old version of the map to a more recent version (this might also explain why it worked for me).

I just wish the one file per actor hierarchy was more human readable, it’s so hard to understand what you edited in source control!