Project created in macOS is very different in Windows

Hello, I’m very new to Unreal Engine. I’m trying to learn it for myself as well as for work. So one task I have is to learn how to interact with a door, and a search led me to this tutorial: Opening Doors | Unreal Engine Documentation

I followed it step by step using UE4 in my iMac with the latest version of macOS Monterrey. Once I finished it successfully I wanted to package it to upload it so my coworkers could download it and take a look. Knowing they have Windows machines, and knowing that sometimes there are incompatibilities, I copied the zip over to my Windows laptop.

To my surprise, when I opened it, everything was different. From the original blank project I had deleted the meshes that come with it, except the two floors. So I got rid the chairs, table and statue, while working on it on my Mac. Well, when opening the project in Windows, it turns out that those meshes are still there. Also, the door actor that I created as part of the tutorial, is gone from the scene. It is available in the contents, but I would have to drag it back on the scene.

So my first thought is that I must’ve done something wrong, and I went back to the Mac, made sure everything was compiled, saved and it worked as it should. This time I didn’t even package it, I just copied the whole folder from the Mac to the Windows laptop. I mean, the root folder with everything inside.

When I opened this in the Windows laptop, same thing. Meshes that should be gone are still there. The door actor is missing. So I’m puzzled. I know sometimes there are things that don’t work the same way when a project goes from mac to Windows and viceversa, but I have never seen anything like this, it’s bizarre.

And even more weird, I redid the tutorial from scratch in UE5. This time, as soon as I created the blank project with the starter content, the first thing I did was to delete the chairs, table and statue. Then I followed all the other steps. So I did the same as before, copied the whole folder over to the Windows laptop. And the same thing happened, the chairs, table and statue were back, the door actor was gone from the scene but available in the contents.

So, can anyone please tell me what’s going on? This can’t be normal, right?

This is the project in my Mac:

And this is what the same project looks in the Windows laptop:

I would like to add that today, I downloaded UE 4.23 to both the Mac and the PC, and this time I did the opposite. I created the door project in the Windows laptop from scratch, and then copied it over to the Mac. When opened on the Mac, the same thing happens; the chairs, table and statue are there, but the door actor is not. It is still in the content browser, but not in the scene.

I’m really puzzled as to how a project that has certain elements in the scene and others are deleted, when opened in another OS suddenly restores the deleted elements, and doesn’t have the ones the user put in the scene. I have seen incompatibilities with the same project opened in different OS, whether it’s Premiere, AE, etc, but never a case like this. Either it’s a giant bug, or I’m doing something wrong because of being unfamiliar with the tool.

Seems to be that you didn’t save changes

You might think so, but no. I’m very paranoid about saving because I hate to do things I just did. So in every software I use, I save every minute or so. At most five.

Besides, the project opens in the Mac as I did it, I open the same exact project, with all the files and same folder name, and it opens fine. When I copy the whole folder including the project file to the PC, it opens with the chairs, table and statue. It’s as if, when you move an Unreal to project to another platform, it opens not the last saved version, but the first version that was created by the program when you select a blank project with starter content.

Never heard of such a problem, the only way to get it I see is something with the save, or you mixed up the files you sent. Also, you can mess up your version control system, like switching to the wrong branch or something like that.
In my work, half of the developers work on macOS, and in more than 3 years of development, we have never had such a problem.
You need to double-check this again, I bet you it’s something obvious.

Oh trust me, I didn’t post this after the first try. I did it like 5 times, then I did it again on 4.23 but the reverse way to see if the same behavior happened when going from Windows to Mac. And it does. I’m talking about this tutorial, done from scratch three times. Twice in macOS then copied the files over to Windows, and this happened. Then I did the tutorial from scratch in Windows, copied over to the Mac, and same problem.

So I could keep trying this over and over, but after 6 or 7 times, it’s not going to change the outcome.

Ok, I’d like to pack the project’s folder and send it to the PC with windows, then unpack it and compare the checksum, it must be equal with the folder in macOS. If it’s not equal - you did something wrong.

Great idea. So I did that. Last night, I had packaged the project in UE 5 to zip. Then I copied the zip file over the network to my Windows laptop. So I just checked the SHA-1 and SHA-256 for both. It’s exactly the same. So is the file size, exactly 639,655,269 bytes on both files.

Then, with this zip file being the only file in the folder, I unzipped it in both OSes. Opened both in UE5. Once again, the project in the Mac opened the way I did it, without the chairs, etc. and the one in the PC opened with the chairs and all that and with the door actor missing from the scene.

It doesn’t make any sense, and I’d be happy to upload the file if anybody wants to check it out. But now that I checked the checksum there’s no doubt, this is either a bug present in at least 3 versions of UE, or it’s some preference somewhere that I might’ve accidentally changed, but I can’t guess what preference would cause something like that to happen.

And let’s suppose for some reason Unreal is loading a cached project file, or the first version it autosaved, which could be as soon as the project was created. But, if you package a project to zip, it’s only going to include the last version you worked on, not all the previous versions. So how is it that it’s opening different scenes in Windows and macOS?

This might sound silly, but what if you open/save one project but upload files from another project?

Nope. Trust me, I checked on this over and over with the same result.

It sounds like magic. Could you try to remake the project and upload it again?

I did remake the project, after doing it in 4.27 I did it in 5 Preview 2. Same thing happened. Then I did it in 4.23 but on the PC then copied to the Mac. Same thing.

Believe me, I’d be happy to admit I did something wrong, if I knew I had. But the process I followed makes me think I didn’t. I mean, if nothing else, when you have an identical checksum on two zip files, one on the PC and one on the Mac, you unzip both, open them and the two projects show different things, then I would assume it’s a bug, but it’s a bug I don’t understand. It makes no sense.

Did you change the default map file to your saved map? You have to change in the project settings which map file gets opened by default when you open the project.

I just opened the UE5 project in both machines, and both are set to the “Minimal_Default” map. That’s the name at the root of the outliner if you see my screenshots above.

Hmmm, looks like the devil’s work :grinning:

Is it possible possible that you edited THE TEMPLATE MAP rather than the map created in the folder?

E g, when you open the template map, you open the map from the engine folder, not from your content folder?

If you “save current map as …” to some new name like “My Test Map” and then make that the start-up map, and copy the project over, will it open “My Test Map,” and will it have the new changes?

1 Like

I’m not sure what you mean. My knowledge of UE is very basic, just getting started. All I know is that I followed the tutorial at Opening Doors | Unreal Engine Documentation step by step. Then I saved everything, not save as, just save, and copied the whole folder to the Windows PC, opened the project, and it was different. That I did in 4.27. Then I did in 5. Then I did in 4.23, but this time in the PC and copied to the Mac. Same problem.
I think evidently this is some kind of bug that perhaps is linked to the starter content. Perhaps something in it prevents the other platform from opening it correctly.

To take a stab at an analogy on what jwatte’s suggesting…

You know how when you open a new document in Word, or whatever, it asks if you want to create the document from a template? (A newsletter, a resume, a cover letter, meeting minutes, etc.) And then it creates a new document, and you can change it and save the document and such? But how if you accidentally open the template itself rather than creating a document from the template, and then save, you’ll have saved over the template?

Unreal does functionally the same thing; the starter content levels are saved as templates in the engine contents. However, as the engine directories are often not write-protected, it is possible to have opened the template level by mistake (i.e., opening the Word template) and be editing there, rather than making a new level based on the template (i.e., actually making the new Word document).

In which case, the changes you’ve made would be in the engine install, not the project. Thus, copying the project between machines… well, you never saved any changes in the project so it’s not like the data’s there to be copied. And if your startup level is set to that template, then copying it back and opening it again would show only that locally-changed template.

And to be honest, my gut take on it is the same as jwatte’s; I copy projects back and forth from Windows to macOS constantly (as my laptop for on-the-go game work is an M1 MacBook Pro) and have not had this problem.

But if you were somehow managing to open the template and save the changes there, this behavior is exactly what I’d expect to see.

The best way to diagnose that is, as jwatte suggested, opening your level and doing a “Save As…” instead of just saving. Pick a path you know is in your project Content directory and save it as “TestMap” or “PleaseWorkMap” or whatever other temporary name appeals, then copy the project over and open deliberately that specific map in your project, not relying on just startup map. If you see the same map on both sides, then you were accidentally saving over the template (and thus leaving it behind, still in the engine’s content folder, whenever you copied stuff over).

If you still see the difference between platforms, about the only answer I’ve got for you is “your computer’s haunted”. :confused:

1 Like

Packetdancer, that would make sense in theory, and I just looked into it. However, I don’t think it’s the case. In macOS, Unreal installs the engines in a weird way unlike most Mac programs, which are installed in the Applications folder. But Unreal gets installed in the /Users/Shared/Epic Games folder, and then the specific version, for example, UE_4.27 or UE_5. However, I don’t save to any of those folders or touch them in any way. In fact, my whole project is in an external hard drive.

There’s the project file, called The_Doors.uproject (this is the first one I did, which is in 4.27), and then some folders, like Build, Config, Content, etc, typical of an Unreal project. I open the project by double clicking in the The_Doors.uproject file. It seems to save which version of the engine was done with, so it always opens the correct version, in this case 4.27.

So when it opens, I see that my map that I worked on is called Minimal_Default. There are other maps, one called Advanced_Lighting and another called StarterMap, which I just opened for the first time and I saw that they are different.

So I do a save all, close the project, and open it again. It opens as I left it, with just the door and no chairs, etc. Then I close it again, and I zip the whole parent folder. I copy that file over the network to my Windows laptop, to the second drive. I get the SHA-256 checksum for both, and it’s a perfect match.

I unzip the file on the PC, double click on the The_Doors.uproject file, it opens 4.27 as expected, and the Minimal_Default map has no door, and it has the chairs, table and statue. In the world outliner, you see that the top that the map is Minimal_Default, same as on the Mac. So same map, from the same exact project, but still different on each OS.

I actually just did this whole thing again and took screenshots:

So I understand which you said about the maps, but it seems to me this is a bug. It’s like saving a text file in a Mac and then you open it on a PC and it says something similar but different. It’s just not possible. Hell, I even did the checksum on the two project files, they match 100%. So this is clearly a giant bug. Maybe it’s related to the starter content, and that’s why it didn’t happen to any of you. I opened another project that a coworker sent me, which he did on PC, and as far as I can tell, it opens the same in Mac and Windows. So it seems to me that there’s a glitch related to the starter content that makes UE load the default map in the other OS, because let’s not forget, I also did this the other way around, I created the project in Windows, copied it to the Mac, and on the Mac, it also shows the chairs and not my saved map.

Oh, and just in case, I did what you suggested, I tried to save the map with a different name, Open_Sesame, and it gave me this error:

The asset ‘/Game/Open_Sesame’ (Open_Sesame.umap) failed to save.

Cancel: Stop saving all assets and return to the editor.
Retry: Attempt to save the asset again.
Continue: Skip saving this asset only.

And whether I choose Cancel, or Continue, it does save the map, but somehow it’s different. When I double click to open them back and forth, the Open_Sesame one is darker, except for the sky, and Minimal_Default is lighter, like the light has more intensity, but as far as I can tell in the light details, the intensity is the same.

The “Failed to save” thing suggests to me that something’s definitely weird about how you set up your project. Whereas if this were a genuine inexplicable bug in the project, I feel like people would run into it far more often.

Regardless, I just tried making a test minimal blueprint project in UE4.27 on Windows 11, tweaking a level, and saving. It loaded fine.

I then checked the project into my in-house git server (because honestly, it’s easier than mounting a fileshare and dragging the folder across), checked it out on my M1 MacBook Pro (running the most recent update of Monterey), and loaded it into UE4.27 there. It loaded fine, and with all the assets I expected.

I could experiment with copying the project over in other ways – dragging it onto a thumb drive and off again, copying it over the network, etc. – but it would just be a stab in the dark.

Would it be possible maybe for you to just pack the project up and put it somewhere for folks to look at? Maybe even your Windows and macOS versions both? It would probably save a lot of time (and back-and-forth guesswork), and make it easier for folks to help.

1 Like