Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Steam overlay in unity

Discussion in 'Scripting' started by bigteef, May 5, 2010.

  1. bigteef

    bigteef

    Joined:
    Aug 20, 2009
    Posts:
    20
    we're integrating with Steam and are having a hard time getting the overlay to appear. We see that other games done in unity are able to do this. We have all other steam functionality working, so any pointers on this to get us moving in the right direction would be greatly appreciated.

    thanks
     
  2. HazeTI

    HazeTI

    Joined:
    Jan 12, 2012
    Posts:
    83
    Reviving this old thread as we're having the exact same problem. As above we have steam functionality working but not able to bring the overlay up.
     
  3. Morning

    Morning

    Joined:
    Feb 4, 2012
    Posts:
    1,141
    Are you launching the game through steam? Because overlay is injected into your game automatically when run from steam.
    I just added my game as custom game to steam and launched it, the overlay shows up just fine. So I don't see why it wouldn't if your game is already on steam.
     
    Last edited: Jun 18, 2012
    RodrigoSeVeN likes this.
  4. HazeTI

    HazeTI

    Joined:
    Jan 12, 2012
    Posts:
    83
    Not launching it through Steam but I am calling the steam initialise, which should have the same effect. Certainly on non-unity game (e.g. their own example project) it's not required to launch through Steam.

    The problem may lie in when we're initialising Steam. Is there any way to run code before Unity initialises the OpenGL/D3D device?
     
  5. Morning

    Morning

    Joined:
    Feb 4, 2012
    Posts:
    1,141
    In that case I can't help but would like to know the solution too.
     
  6. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    if you source license it then yes.
    Otherwise no, the graphics is there before the first line of script code gets executed, likely even before mono itself is operating.
     
  7. HazeTI

    HazeTI

    Joined:
    Jan 12, 2012
    Posts:
    83
    Hmm, that's what I feared. OK, I'll try launching it from Steam and see if the overlay at least works that way.
    Thanks guys.

    --edit--
    I forgot to add, launching from steam does allow the overlay to work.
     
    Last edited: Jul 6, 2012
  8. Kemical

    Kemical

    Joined:
    Oct 4, 2010
    Posts:
    24
    Did you verify you had "enable Steam community" checked in the properties of the game in the Steam Client (the checkbox was unchecked by default for me).
    Seems stupid but makes me lose half an hour ;)
     
    Last edited: Jul 11, 2012
  9. Karmarama

    Karmarama

    Joined:
    Jul 11, 2011
    Posts:
    261
    I think what's being discussed here is injecting steam it's self into the code of Unity, such as achievements etc - which, by adding your game to steam as a non-steam game will only have the overlay. The OP, or person reviving the thread may not need achievements but that's essentially what they're asking I do believe.
     
  10. Kemical

    Kemical

    Joined:
    Oct 4, 2010
    Posts:
    24
    We are currently integrating Steamworks for our game Transcripted and even if achievements were displayed in unity editor mode, when in fullscreen (from a desktop build) it seems it only works with the game launched from Steam Client.

    But without the "enable Steam community" checked in game properties, the achievements (and any other overlay features) won't be displayed (no matter if the game is in windowed mode or not)
     
  11. yoyo

    yoyo

    Joined:
    Apr 16, 2010
    Posts:
    112
    (Necropost, but anyway ...) On a related note, has anyone been able to get the Steam overlay to work while playing your game in the Unity editor?

    By adding the Unity editor to Steam as a "non Steam game" I was able to get the Steam overlay to appear in the editor itself, but it shows up on every window and is (almost) unresponsive, so I'm not sure this is getting me anywhere.
     
  12. elmar1028

    elmar1028

    Joined:
    Nov 21, 2013
    Posts:
    2,355
    I think Steam overlay appears in every game automatically. Try to add finished game as a build into steam and try launch it. Then try to open steam overlay from there.

    I don't think there is support for steam overlay in editor.
     
  13. Rockaso

    Rockaso

    Joined:
    Oct 31, 2016
    Posts:
    85
    This is an old thead but question seems to be unanswered,
    To get the Overlay to work just build the game in Unity, then go to Steam, Games => Add a Non-Steam game to my library, browse to select the game .EXE, then run the game from Steam, that way the overlay will work, I was trying to call ActivateGameOverlayInviteDialog but it wouldn't work until now :)
     
    vvanus, AntonPetrov, LilGames and 2 others like this.
  14. oTaijjo

    oTaijjo

    Joined:
    Nov 3, 2019
    Posts:
    30
    Hi, we got reported issues with the Steam Overlay on a certain PC only (Windows11, DirectX 12), which I suspect might relate to the original issue of this thread.

    @Dreamora said, there's no way to run code before Unity initializes the OpenGL/D3D device. Steam documentation says, the overlay requires certain methods to be called before that happens, though. So I wonder, if our issue is due to that, and I generally wonder why the Overlay works in so many games then anyway.

    Well, my question is this: There's the [RuntimeInitializeOnLoadMethod()] attribute. Could this be used to run code prior to initializing the OpenGL/D3D by utilizing the right RuntimeInitializeLoadType?