PabloMK7 / citra

A Nintendo 3DS Emulator
GNU General Public License v2.0
3.75k stars 635 forks source link

Smash Bros. for Nintendo 3DS - Vulkan Backend- Fullscreen crashes program on Steam Deck/Linux Build #38

Closed drewbyhk closed 4 months ago

drewbyhk commented 8 months ago

Is there an existing issue for this?

Affected Build(s)

r8433057

Description of Issue

Whenever Citra is toggled to fullscreen mode, it causes the program to crash.

Expected Behavior

Fullscreen should work just fine and allow the user to play games without crashing

Reproduction Steps

  1. Open Citra
  2. Select a game
  3. Go to View > Fullscreen and toggle fullscreen
  4. Program crashes.

Log File

Not sure how to pull the log file from Linux. If anyone knows, please let me know and I can upload a log.

System Configuration

Using 256GB LCD Steam Deck

Miguel-hrvs commented 8 months ago

Go to .local/share/citra-emu/log and post your citra_log.txt In my pc I can't reproduce the issue.

drewbyhk commented 8 months ago

citra_log.txt Here is my log file.

Miguel-hrvs commented 8 months ago

Thanks, does it happen on any renderer?

Miguel-hrvs commented 8 months ago

Ok, this is fun, I just opened super smash bros (the same game as you), and the crash going fullscreen happens. Here's my log: citra_log.txt

Miguel-hrvs commented 8 months ago

The problem seems to be vulkan only. In citra-ufork this doesn't happen. Time to look at the problem in this fork. Log from citra-ufork: citra_log.txt

drewbyhk commented 8 months ago

Did a bit more testing. I also came to the same conclusion, since it doesn't happen on OpenGL.

Also, it seems other games are unaffected. Seems like a Smash Bros. exclusive issue.

rtiangha commented 7 months ago

For what it's worth, full screen in Smash Bros works in the very last official Canary build so it's either this fork or possibly 8433057909752c8b23fbe0224011fda6ecab1744 if it ever worked properly before then. I'm going to build the old v2.2 release (which was right before r8433057 to see what happens.

rtiangha commented 7 months ago

Oh, weird. Smash Bros full screen works in the last Canary, but it does NOT work in the last nightly (r2104). I don't know what that implies.

rtiangha commented 7 months ago

And it doesn't work in v2.2 either.

Miguel-hrvs commented 7 months ago

Yep, it was fixed on the last rafaelthegreat vulkan canary changes.

rtiangha commented 7 months ago

Do you know what commit(s) that is? I'd like to merge that into my fork.

Miguel-hrvs commented 7 months ago

You have to include these I think: https://github.com/PabloMK7/citra/pull/27/commits/9f5c8d0e2f5db880082bbd20518da7b60bb4db3f https://github.com/PabloMK7/citra/pull/27/commits/4a63fc2ca2e47f08532fb44e23a4857fc4339d07 https://github.com/PabloMK7/citra/pull/27/commits/0c9037f075ca6c0bbf8a5fc542c47a30aefdf551

rtiangha commented 7 months ago

The semaphore one was also part of that set, and with a minor change to match current code to get it to compile, you're right; it fixed the problem. I've submitted Pull Request #77.

Miguel-hrvs commented 7 months ago

Good work! This is an important fix for linux and macos

rtiangha commented 7 months ago

It's been merged now.

https://github.com/PabloMK7/citra/releases/tag/ra8e601a