Moving landscape component to another level causes broken references

Hi
I want to stream my landscape but each time I move some component to another level it causes same error :

Can’t save …/…/…/MyProject/Content/Maps/Lvl_02_Marina/lvl_02_marina_landscape_1.umap: Graph is linked to object(s) in external map.
External Object(s):
Texture2D_153

for each level its diffrent texture but same error. I tried to fix up redirections on that folder but it didn’t help or find this textures but couldn’t.
Did any of you had similar problem or know how to fix it?

I have the same problem and I don’t know how to fix that. Help! :frowning:

Hi Strayer,

What method are you using to move the landscape components?

That is the correct way to move the components. I just tested it in-house and couldn’t reproduce your results. Have you been able to reproduce it in a new project or is it confined to your project alone?

  1. In “Levels” click level where I want to move the landscape component.
  2. Open landscape tools and click “Manage”
  3. Next click “Move level”
  4. Ctrl+click on the component which I want to move.
  5. Save level and then error occurs.

I know what’s wrong! This error only occurs when we painting on landscape and then try to move component. If we move component before any painting it works.

Hmm, I just tested this several times and I can get an error with or without painting.

Hi Strayer,

Thanks for the feedback. I was able to reproduce the issue and I have submitted it to our developers to look into further.

With foliage being instanced meshes there isn’t any way to export them. The only workarounds I know at the moment would be to paint the foliage after you have moved the components to whichever level you needed them to be on or skip the foliage tool completely and hand place them. I know this isn’t ideal, but please bear with us while we investigate the issue.

Thanks, TJ

Well I do it, just like kodmistrz. I tried to replicate this problem and it occures to me when I got my landscape painted with foliage, and then I want to move component to the other level. The question is, is there any way to move landscape component without losing foliage. Any chance to export foliage somewhere or move foliage with component?

Hi TJ,

Thanks for your help, please let me know if anything new appears in the issue.

Regards

Hi Strayer,

I’ve just submitted a fix for this error, but unfortunately it won’t make it into 4.4, so it’ll have to wait for 4.5.

But the workaround, which is also the recommended workflow when using multiple levels with foliage, is to save your foliage settings as an asset. Go to where it says (not using shared settings) and press the Save icon to the right of it, and you can save the foliage settings in an asset, and those settings will be used across multiple levels. That guarantees that all levels will use the same object to identify each foliage type and will prevent the second level trying to reference the first level’s foliage type, which is the cause of the error message.

Cheers
Jack

Sorry to bump this, but I have saved out all of my folliage into uassets as you described, but I am still getting this error.

EditorErrors:Warning: Warning Can't save ../../../../../../Dwarrows(UE4)/Content/Maps/YourTownStreams/TallPineForrest.umap: Graph is linked to object Texture2D /Game/Maps/YourTown.Texture2D_621 (Unknown property) in external map

Might there be some other thing I can try?

EDIT: Having looked through the map file for a reference to _621, it seems to be “LandscapeMaterialInstanceConstant_621” (which makes sense, since all I have moved is landscape to the other level). Is there something I can do about this?

Hi Grogger,

That’s unexpected and not related to the foliage. What version of UE4 are you using? I’m going to try to reproduce the problem here now.

A quick workaround may be to temporarily set the the LandscapeMaterial of the Landscape to be something else, such as DefaultMaterial. And then reapply the original material back again. No layer information will be lost during the process.

Could you try that and let me know if it works?

Thanks

Hi JackP, I’m using version 4.3.1 for this.

I have tried playing around with the landscape material as you’ve described, but I’m met with the exact same error.

I’ve uploaded my project if you needed a sample: Project files

Thanks for the reproduction case, that is a critical bug!

I’m going to try to get the fix into the 4.4 release even though it is imminent.

If you would like to fix the code yourself, it’s a simple change to Engine\Source\Editor\LandscapeEditor\Private\LandscapeEdModeComponentTools.cpp

Find the line around line 578 which says

CurrentWeightmapTexture = Comp->GetLandscapeProxy()->CreateLandscapeTexture(....

and replace it with

CurrentWeightmapTexture = LandscapeProxy->CreateLandscapeTexture(...

Excellent, thank you JackP :slight_smile:

Good evening everybody,

is this bug already fixed? Because I tried to move a certain landscape part as well to another level and create a world composition with it. I also deleted every foliage and also every material on the landscape and saved it, than I moved it to a new level file. But when I try to save the new created level, than it still gives me the graph bug, where it says something about texture problems. It’s really stopping my working progress :frowning:

Screenshots:
Imgur
Imgur

best regards

So I experimented around a little bit and it looks like the landscape materials/textures which got created in the previous UE4 versions on the landscape aren’t compatible with the current landscape. So let’s say I painted on my landscape in 4.4 and now trying to moving landscape parts in 4.6 off this landscape.
Than it gives me the error message I posted previously, so the problem now is how can I disable/remove the materials completely off the landscape? I already tried to delete all materials and deselect it from the Landscape, but it gives me still the error.

Hi Freezer,

The bug mentioned in this thread was caused at the time you tried to move the section of landscape to another level. That bug was definitely fixed in Unreal Engine 4.5.

It seems like you might be running into a separate but related bug.

Would you able to send me your umap file to help debug it? I don’t need any assets, materials etc, just the map file.

Thanks
Jack

Hey Jack,
thanks for your answer. But it seems like that I fixed it yesterday evening. What I just did was, I created a new blank Level, than I just added my Level with the already created landscape where foliage and objects etc. were on it. AfterwardsI created another empty Level where I can put a certain landscape part in for level streaming. Than I selected the level with the landscape in it and assigned the landscape from the content list to the Persistent level. This way I could just move the landscape parts. The textures were still on the landscape etc. only the foliage disappeared.

I’m not sure if it is kind of a bug, or I just got confused there and made some simple mistakes to move a landscape part.
I hope my explaination is understandable, otherwise I may create a screenshot tutorial how I did it or I make a video. :slight_smile:

Best regards