xemu-project / xemu

Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
https://xemu.app
Other
2.85k stars 283 forks source link

Steam Deck regressions & kicked to game mode #1279

Open Spankomycin opened 2 years ago

Spankomycin commented 2 years ago

Bug Description

Regressions for several titles where left hand corner of screen missing/text unreadable for KOTOR, Buffy Vampire Slayer, and D&D Heroes. If you try to still play titles, kicks you to restarting game mode on steam deck.

Expected Behavior

Was working in previous version

xemu Version

Current version as of October 16, 2022 (sorry away from deck to see latest version) Games mentioned did work on previous version

System Information

Steam deck

Additional Context

No response

mborgerson commented 2 years ago

Games mentioned did work on previous version

If you try to still play titles, kicks you to restarting game mode on steam deck.

Can you clarify what this means? What is 'restarting game mode'?

Spankomycin commented 2 years ago

sorry about the lack of detail; didnt have my deck with me with the original post or currently with me at work. I will get you the info on version(s) ASAP. I will try to clarify as well. These games worked specifically on the steam deck prior to the most recent xemu update (latest update from october). Buffy had some minor sound issues but very playable, KOTOR ran ok, D&D heroes, the one i spent the most time with, ran pretty good with minor fluctations in fps but mostly 55-60 fps. Now they menus are gibberish and most times missing graphics on bottom part of the screen starting from top left of the screen to bottom right (cutting in half diagonally not horizontally). I dont know if that even makes sense but will take some screenshots when i get home if that helps.

in regards to "restarting," I either had issues exiting the game when hitting the Steam button or, if i tried to actually play/push through it, my steam deck would just restart on its own, bringing up "verifying installation," steam logo and bring me back to my home menu.

I did play ~30 minutes of Halo on the deck without issues and i briefly started bloodrayne 2 and mechassault and they seemed fine.

Spankomycin commented 2 years ago

Ok looks like I am on version 0.7.71

Spankomycin commented 2 years ago

So version 0.7.71 is where it got messed up. Here are some pics

Spankomycin commented 2 years ago

5B3C6F4F-0812-4BEB-A124-A40848CB4DDE ![Uploading 8C7EBAFC-D8D8-461B-A905-5741EF6F6FCF.jpeg…]()

Spankomycin commented 2 years ago

33EDF2E5-E359-496F-A308-45610A85E8C9 DB4CE4A0-0A82-4ADB-B213-BEAC91C880A6

Dahak66 commented 2 years ago

Experiencing most of this too. Haven't had any crashes as a result of it, but the graphic/text issues and the diagonal slashes in the screen as pictured are happening to me with Buffy and KotOR. Halo, as mentioned, still works correctly. Only thing I've done differently, and why I didn't report it myself, is that I'm using it via Batocera. But also on a SteamDeck.

izkuru commented 1 year ago

FWIW, I ran into the same kinds of glitchy artifacts with KOTOR when running xemu on the Steam Deck (via flatpack).

Rolling the flatpack back to 0.7.64 resolved the issues for me

sudo flatpak update --commit=24782e2d47e650b88eec1d5b6f1b26a5d2c05c877a5b4117c308868e66695394 app.xemu.xemu

HadetTheUndying commented 1 year ago

This is effecting Phantom Crash too

HadetTheUndying commented 1 year ago

Disregard my last Comment I deleted it. The problem at least from Phantom Crash was introduced in v0.7.71

By this commit: 22db3304a454b2d289a9d5ea488fa3c3dec836f4

I don't know how or why.

@Spankomycin can you try running sudo flatpak update commit=c76629f17bb1516410a1bac1b9e559301141acc63c2d954e5f440c5da0e7b3da app.xemu.xemu ? and test the games you linked above?

HadetTheUndying commented 1 year ago

So yeah this is still happening as of today's release.

Tested Effected games

https://xemu.app/titles/47450002/#Phantom-Crash (In-game, not the Menu UIs) https://xemu.app/titles/4d530051/#Conker-Live-Reloaded (xemu crashes effecting some menus) https://xemu.app/titles/49470013/#Dungeons-Dragons-Heroes (HUD and Menu UI, some loading screen stuff and scene transition effects might be a good game to debug with)

Version:      0.7.72
Branch:       a0cffd77debf6caf8804a0fbb2d04fb9c54c13a6
Commit:       a0cffd77debf6caf8804a0fbb2d04fb9c54c13a6
Date:         Sat Jan  7 02:52:41 AM UTC 2023

System Info(To Rule out Mesa Versions)

CPU:          AMD Custom APU 0405
OS Platform:  Linux
OS Version:   Freedesktop.org SDK 22.08 (Flatpak runtime)
Manufacturer: AMD
GPU Model:    AMD Custom GPU 0405 (vangogh, LLVM 14.0.6, DRM 3.45, 5.13.0-valve36-1-neptune)
Driver:       4.6 (Core Profile) Mesa 22.2.4 (git-80df10f902)
Shader:       4.60

https://user-images.githubusercontent.com/28496334/211140288-75113dda-5daf-48db-bfdb-dc1cfd08e893.mp4

HadetTheUndying commented 1 year ago

This is an upstream issue with mesa specifically radeonsi. The issue does not happen if you're using zink for opengl. I will open a report tomorrow regarding it after i've had time to think about how to debug it. it effects every version of Mesa from 22.2.4 up at least but probably was introduce in 22.2.0. This is very unfortunate because there are some major performance improvements in the code since 22.3.0.

HadetTheUndying commented 1 year ago

This is my final comment on it until I track down the problem mesa commit. For these games that are effected by it, if you're launching them through steam i recommend setting this launch option __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

This will run the games using zink as your GL driver. There is a possible performance hit but I have not noticed it in DnD Heroes or Phantom Crash. Conker takes so long to start and I don't particularly enjoy the game enough to keep waiting literal minutes to test it.

arolust commented 1 year ago

...i recommend setting this launch option __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

This does appear to fix everything, Phantom Crash running perfectly now.

chrimechief commented 1 year ago

...i recommend setting this launch option __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

This does appear to fix everything, Phantom Crash running perfectly now.

How do you apply this fix? I’ve tried putting this at the end of the steam launch options but it then won’t load xemu.

SilverSurferNHS commented 1 year ago

...i recommend setting this launch option __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

This does appear to fix everything, Phantom Crash running perfectly now.

How do you apply this fix? I’ve tried putting this at the end of the steam launch options but it then won’t load xemu.

I put it at the beginning of the launch command before the flatpak commands.

chrimechief commented 1 year ago

...i recommend setting this launch option __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

This does appear to fix everything, Phantom Crash running perfectly now.

How do you apply this fix? I’ve tried putting this at the end of the steam launch options but it then won’t load xemu.

I put it at the beginning of the launch command before the flatpak commands.

Thank you for this, I will give it a go after work :)

SilverSurferNHS commented 1 year ago

Here is my full launch command after adding the flatpak: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command% run --branch=stable --arch=x86_64 --command=xemu app.xemu.xemu

For clarity.

chrimechief commented 1 year ago

Here is my full launch command after adding the flatpak: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command% run --branch=stable --arch=x86_64 --command=xemu app.xemu.xemu

For clarity.

Amazing thankyou very much, worked a treat! No more diagonal ghosting in phantom crash.

bent15 commented 1 year ago

Here is my full launch command after adding the flatpak: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command% run --branch=stable --arch=x86_64 --command=xemu app.xemu.xemu

For clarity.

Noob here. How do I get to the file location/script to put that command in?

parkerlreed commented 1 year ago

Here is my full launch command after adding the flatpak: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command% run --branch=stable --arch=x86_64 --command=xemu app.xemu.xemu For clarity.

Noob here. How do I get to the file location/script to put that command in?

Right click the game in Steam desktop or the cog menu in Game mode. Properties > Arguments. That entire line goes in the arguments field.

bent15 commented 1 year ago

Here is my full launch command after adding the flatpak: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command% run --branch=stable --arch=x86_64 --command=xemu app.xemu.xemu For clarity.

Noob here. How do I get to the file location/script to put that command in?

Right click the game in Steam desktop or the cog menu in Game mode. Properties > Arguments. That entire line goes in the arguments field.

Hmm I'm not seeing the Arguments under the properties when right clicking on Phantom Crash and clicking properties

parkerlreed commented 1 year ago

Here is my full launch command after adding the flatpak: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command% run --branch=stable --arch=x86_64 --command=xemu app.xemu.xemu For clarity.

Noob here. How do I get to the file location/script to put that command in?

Right click the game in Steam desktop or the cog menu in Game mode. Properties > Arguments. That entire line goes in the arguments field.

Hmm I'm not seeing the Arguments under the properties when right clicking on Phantom Crash and clicking properties

image

scampa123 commented 1 year ago

FIXED: Had to modify the string to just this: __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

There was no need for the commands afterward since the Target already had them set! Thx to the Discord folks for assistance

I've added Xemu and Indiana Jones and the Emperor's Tomb to Steam on the Steam Deck, but when I add that launch command, it will not start. If I remove the command it launches.

I was recommended to try this since the textures are messed up when I try to run the game.

Any info would be appreciated on how to get this launch command to work. I also launch games from EmuDeck on Steam Deck so I'm not sure if there would be a way to add the necessary commands that way as well...thanks again

MicheleGiunto commented 1 year ago

As of now, rolling back is impossible, resulting in a 404 error. So if your game is glitchy, I’m sorry, but you can do nothing.

Also, it seems flathub has deleted every previous version since 2022-12-31. Sorry guys, it’s over

parkerlreed commented 1 year ago

Could we not just have a build specific for the Deck at whatever commit is working best?

dracc commented 1 year ago

@MicheleGiunto Did you read the comments before posting? Try using the launch options as listed by HadetTheUndying and I'm sure you'll be up and running again.

@parkerlreed The issue is not as much with xemu code as it is flatpack drivers. Try using the Launch Options you too. :)

parkerlreed commented 1 year ago

@dracc Thanks! Heh. I was just trying to quell the doom and gloom of "Sorry guys, it's over"

Great to know there's some options (and didn't realize it was more related to the Flatpak drivers themselves rather than xemu)

MicheleGiunto commented 1 year ago

@MicheleGiunto Did you read the comments before posting?

I did. I tried this workaround. It didn’t work

Dahak66 commented 1 year ago

@MicheleGiunto

I did. I tried this workaround. It didn’t work

Try just adding this to the launch options (instead of the longer version earlier in the thread): __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink %command%

It works again for me, at any rate.

chugalaefoo commented 1 year ago

Is there s way to add that line of command within emudeck?

dracc commented 1 year ago

Is there s way to add that line of command within emudeck?

Sure, just edit your xemu-emu.sh accordingly. It should probably look something like this:

#!/bin/sh
export __GLX_VENDOR_LIBRARY_NAME=mesa
export MESA_LOADER_DRIVER_OVERRIDE=zink
export GALLIUM_DRIVER=zink
/usr/bin/flatpak run app.xemu.xemu
chugalaefoo commented 1 year ago

Is there s way to add that line of command within emudeck?

Sure, just edit your xemu-emu.sh accordingly. It should probably look something like this:

#!/bin/sh
export __GLX_VENDOR_LIBRARY_NAME=mesa
export MESA_LOADER_DRIVER_OVERRIDE=zink
export GALLIUM_DRIVER=zink
/usr/bin/flatpak run app.xemu.xemu

Thank you very much. I copy and pasted that but unfortunately it didn't seem to help.

Jade Empire on steamdeck still runs with glitched graphics like the KOTOR screen shot posted above.

hyperpac commented 7 months ago

Hi guys,

I´m a little bit lost here on SteamOS with this issue.

a) If I´m using the __GLX_VENDOR_LIBRARY_NAME=mesa MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink option, I get the error message that DRI3 is not available.

b) If I´m using the vs_position_always_invariant=true option, I get the message that it´s overwritten by environment settings.

And Burnout 3 Takedown remains dark :-(.