Steam gets initialized, but overlay not working [MAC]

I have a packaged build for Mac which has been uploaded to Steam as well. When I play it, I get the ‘in-game’ steam notification and I can see in the logs that steam has been initialized. However I am still unable to get the Steam overlay for my game in Mac. I have checked all the preferences without any avail. The overlay is working fine for some of the other games I downloaded from Steam.
Everything runs fine on Windows. The only problem in Mac that I’m facing is the absence of the overlay.

Hello, I have the same problem with the overlay in MAC. (In Windows it works OK).

Where you put the “steam_appid.txt” file under/inside [YourProject] .app?

It’s a known issue, Epic is working on it.

Not much to do at the moment I fear.

Has this been fixed yet? I can’t seem to get this to work on either Metal or OpenGL in macOS 10.11.6 using UE 4.13 and Steamworks 1.37 and I made sure that I followed the exact setup steps. It is working in Linux and Windows however.

Same here - this is the final stumbling block for our Mac release - Steam overlay doesn’t work, but everything else is fine - multiplayer, achievements etc.

I’ve tried injecting the steam_appid.txt just about everywhere, just in case, without luck (4.13, steam v132).

The root of the issue is that UE4 uses the Metal rendering API on Mac and some aspects of Metal are conflicting with Steamworks. Steamwoks will need to be modified to remedy the issue, however it is non-trivial so it has taken time to properly address.

I contacted Valve for an update : They have been hard at work to correct the issue. The majority of the known problems have been corrected and should have the fix in testing sometime in the weeks ahead. Following testing we (Epic) will need to integrate any changes with UE4 which may require additional efforts.

Valve has no official estimate for when the fix will be completed, but be assured it is actively being addressed.

Cheers,

Jonathan

Thank you very much for the info!

Don’t suppose it’s possible to disable Metal and only use OpenGL? I had a quick try at just disabling Metal SM4 & SM5 under Target RHIs in project settings > Mac (leaving just OpenGL), but when I try to run the packaged game, it just says it’s missing Metal shaders (this is on OSX El Capitan 10.11.6):

114264-mac_opengl.png

(That was with an iterative cook though - I can try deleting all the intermediate data + full rebuild but I’ll have to do it overnight since it takes my mac mini hours to build)

Yeah, it’s not that simple. You’d have to edit PlatformCreateDynamicRHI() in AppleDynamicRHI.cpp to make OpenGL default and not try to use Metal, but also edit Mac OpenGL code to not use CoreAnimation, as we use it for both GL and Metal and it’s CoreAnimation that Steam Overlay is not compatible with. Doing the latter is possible, but may not be trivial. Forcing FMacOpenGL::SupportsCoreAnimation() to return false would be a start, but most likely not enough.

ok 2018 now. I too am having problems on getting the overlay to display on mac. Tried with clean projects on 4.13 and 4.18 blueprints only. As stand alone game and as launched from steam. with the appid.txt in the same folder. Yes turned on the plugin and changed the ini file as per unreal wiki and others.
So is it still a known problem or am I being silly. will it work if I use a c++ project and link it all in?

I’m having problems getting my project, which runs on Steam Online Subsystem, to work on Mac (it can’t find any hosted sessions), but it works fine over 2 Windows PC. I made the changes in DefaultEngine.ini and added it to Steam as well. I think I must be missing a key set up for Mac since it works on PC, could anyone walk me through what is needed to have Steam multiplayer working for Mac or share a project that works for 2 Macs?