TheGameCreators / GameGuruRepo

The GameGuru Repository For Community Collaboration
http://www.game-guru.com
137 stars 56 forks source link

Reports still coming through of the black screen for AMD. #4333

Closed synchromesh62 closed 5 months ago

synchromesh62 commented 1 year ago

UPDATE: Until the cause has been reproduced, we have a solution for anyone seeing this with their AMD graphics cards. Just follow these instructions to start using GameGuru MAX: https://steamcommunity.com/app/1247290/discussions/0/3764481749069937034/

Reports still coming through of the black screen for AMD. Though some have stated it now works in the editor the Standalone game just goes to a black screen when tested.

davetgc commented 1 year ago

@synchromesh62 - Did the users mention the cards?

synchromesh62 commented 1 year ago

@synchromesh62 - Did the users mention the cards?

Not all but the ones that did seem to be the usual 6000 series

dennimoto commented 1 year ago

Can confirm black screen still on 6900XT. Editor and standalone alike.

plemsoft commented 1 year ago

@dennimoto Could you let me know what driver version you have , and try to disable "AMD FreeSync" and see if that fix the issue, Thanks for your help :)

dennimoto commented 1 year ago

@plemsoft Driver version is 23.3.2. Disabling FreeSync has no effect.

gedgeck commented 1 year ago

I can add that RX 7900 XTX (Powercolor Red Devil, regular) does have black screen at both editor pane and when playtesting (menus and loading screen are fine, but real gameplay is pitch black with HUD and sounds in background, actions seem to trigger correctly - can take aztec dagger at the corresponding demo, again, just judging by sounds). Adding DXVK dlls to GGM root and 'Tools/Building Editor' dirs fixes this. The Adrenalin is at 23.3.2 . FreeSync disabled And that's valid for 'releasecandidate' version

plemsoft commented 1 year ago

@gedgeck Thanks for the information , could you make a video so im able to see the areas that are black , perhaps make a video where you create a new terrain (i know it might be black) and then try to edit that level and last try test game , this would really help me see all the places where the problem is , Thanks for your help :)

gedgeck commented 1 year ago

@plemsoft Here I uploaded some videos for both existing and new levels, with and without DXVK. Last one has GGM Adrenalin settings too for reference

GameGuru MAX RC - AMD Radeon Testing - No DXVK https://youtu.be/tcftdSXaSe8

GameGuru MAX RC - AMD Radeon Testing - Fresh level, No DXVK https://youtu.be/vb0xcxMMB5k

GameGuru MAX RC - AMD Radeon Testing - Existing project, DXVK https://youtu.be/yMPEr6tH6Es

GameGuru MAX RC - AMD Radeon Testing - Fresh level, DXVK + Adrenalin settings https://youtu.be/Vo0kuZKqlzY

Let me know if I can assist further

P.S. I didn't know maps pool is shared between projects when I started recording :)

plemsoft commented 1 year ago

@dennimoto Is this the same you see on 6900XT ?

dennimoto commented 1 year ago

@plemsoft yes, it is the same.

plemsoft commented 1 year ago

@gedgeck @dennimoto Thanks for the info , as you can see the interface, in "test game" could you try to disable all post processing and also try to disable any shadows ,perhaps we are able to figure out what shader has the problem then, thanks for your help :)

postprocessing

gedgeck commented 1 year ago

@plemsoft I tried to set different values for post processing and shadows (min/max/turnoff) but that doesn't help with black screen appearance. Filters (colored one, like 'Burgas' or 'Candle Light') change screen color though

dennimoto commented 1 year ago

@plemsoft Disabling all post processing and shadows has no effect. I am able to get everything working with the DXVK work around as @gedgeck has.

plemsoft commented 1 year ago

@dennimoto @gedgeck Thanks i think i need a renderdoc capture so im able to see exactly what is happening, could any of you try this:

Goto: "https://renderdoc.org/" and download the latest version v1.26. and install.

  1. Open RenderDoc.
  2. Click tab "Launch Application"
  3. Under "Executeable Path" select GameGuruMax.exe from your steam library.
  4. Click "Launch"
  5. Create a new project in Max click the new level, when your inside Terrain Generator and have the black screen, press "F12" and close Max.
  6. Renderdoc will now have captured the data, so in renderdoc select file->"Save Capture As". Zip this file and upload it here or e-mail it to me plemsoft@gmail.com

Thanks for your help :)

renderdoc

dennimoto commented 1 year ago

@plemsoft sent to your email as google drive link, file too big for gmail and github.

dennimoto commented 1 year ago

@plemsoft I'm not sure if this is helpful to you or not, but when I run MAX through RenderDoc with Enable API Validation checked, MAX opens with a "Failed to create graphics device. ERROR: 887a004" dialog, then self terminates. This does not happen when I have the dxvk dlls in the MAX folder.

plemsoft commented 1 year ago

@gedgeck @dennimoto To rule out any other software could one of you try a clean boot and see if it works: https://support.microsoft.com/en-us/topic/how-to-perform-a-clean-boot-in-windows-da2f9573-6eec-00ad-2f8a-a97a1807f3dd Thanks for your help :)

gedgeck commented 1 year ago

@plemsoft Disabled all non-microsoft services as described at Windows 11 and still have black screen issue (I couldn't start Steam after disabling some of those extra services and so started GameGuru MAX directly as executable). Yesterday I updated GGM and Adrenalin to 23.4.1 so video drivers are latest (but Adrenalin itself wasn't running when testing)

dennimoto commented 1 year ago

@plemsoft No difference on a clean boot unfortunately.

LeeBamberTGC commented 1 year ago

@plemsoft Did the RENDERDOC report from this PC system help in any way? It should show which GPU call event is rendering out the blackness.

plemsoft commented 1 year ago

@LeeBamberTGC GGTerrain_Draw() always come back black , so think the problem is inside there somewhere.

@gedgeck @dennimoto Could one of you try the shader in the attached zip, backup the original shader "\GameGuru MAX\shaders\GGTerrainVirtualPBR_PS.cso" and replace with the new , and let me know what you see , Thanks for your help :)

GGTerrainVirtualPBR_PS.zip

LeeBamberTGC commented 1 year ago

@plemsoft Good find, we get closer :) The GGTerrain uses a custom shader, not part of Wicked Engine but created by TGC to do very fast procedural terrains with some fancy virtual texturing tricks. For possible targets, look at things like:

  1. The alignment of constant buffers and sizes, AMD may enforce stricter limits on 32/64 bit alignment or sizes
  2. Some other resource may not be reset ready for the terrain rendering phase, or not unset when leaving
  3. When working on the partcle draw order, I noticed that Paul (who wrote GGTerrain) often re-used CB slots and did not restore before carrying on the render, so look for terrain using resource indexes that are occupied or not managed

The real clue is that it works on NVIDIA and most AMD card (including my AMD 5 years old card), so it will be something related to a specific AMD architecture limit, so subtle we get away with it but the engine can trip during a perfect storm.

gedgeck commented 1 year ago

@plemsoft No luck, I'll send you renderdoc from GGM session using that custom shader too

dennimoto commented 1 year ago

@plemsoft Still black here with the replaced shader.

plemsoft commented 1 year ago

@gedgeck @dennimoto Do you both have more then one monitor ? , thanks for your help :)

gedgeck commented 1 year ago

@plemsoft I only have this one ( https://www.philips.co.uk/c-p/27M1N3500LS_00/evnia-gaming-monitor-quad-hd-gaming-monitor ) , connected through DisplayPort 1.4 . Monitor itself has splitter connected to another HDMI output; even though I doubt it matters I'll try to disconnect it to rule out any disturbance in the outer space :) EDIT: Disconnecting splitter didn't help either

dennimoto commented 1 year ago

@plemsoft just one.

plemsoft commented 1 year ago

@gedgeck @dennimoto Could you try this "GameGuruMAX.exe" (remember to backup the original) https://drive.google.com/file/d/15jCHtnNMTiWoRNN6kvGbqJJrNoVzbLxP/view?usp=sharing

And try to play the "Switch Escape" demo , what do you see ? , thanks for your help :)

FYI: its a debug build so will be slower then normal.

gedgeck commented 1 year ago

@plemsoft Still have black screen in both editor, gameplay and "Switch Escape" demo. Demo starts with robotic voice and text describing the scene, there is HUD but nothing else visible

plemsoft commented 1 year ago

@gedgeck What about this one: https://drive.google.com/file/d/15pl5MDgtddUwshC1vRgGYiFdkIMM6c_K/view?usp=sharing

gedgeck commented 1 year ago

@plemsoft Nothing new. Maybe you'll set some filters or something else (short changes info text in HUD?) so we at least sure something changes? The only change I noticed with debug builds - they are being caught by Windows Defender asking for permission to run unsigned app

plemsoft commented 1 year ago

@gedgeck Thanks yes it now say DEBUG AMD ... this one also removes postprocessing. https://drive.google.com/file/d/15sGvL6dO305NAdiOR8TC8e2HK5ruqQs1/view?usp=sharing

gedgeck commented 1 year ago

@plemsoft I can confirm it now displays DEBUG AMD ISSUE 1.1 over GGM main window and in-game. It seems as high level overlay though and not what is rendering at '3D Level Editor' pane. But that's something to start with :) Still black screen, didn't notice anything else

dennimoto commented 1 year ago

Likewise, still black.

plemsoft commented 1 year ago

@gedgeck Another huge chunk removed 1,2! https://drive.google.com/file/d/15u45sYg5nukYKEEg3Bod6l4c-r8-sW6K/view?usp=sharing

gedgeck commented 1 year ago

@plemsoft See 1.2 version but still black screen here P.S. I'll be away for some time, will check next versions later

plemsoft commented 1 year ago

@gedgeck Last try for today , this one removed tons of stuff, nearly only object render left, crossed fingers :) https://drive.google.com/file/d/15uFLGFTJCpSLRB5SK3HyEySIYNK1nGB1/view?usp=sharing

dennimoto commented 1 year ago

@plemsoft Still black. No change with 1.3.

gedgeck commented 1 year ago

Confirm what @dennimoto says. I'm not quite familiar with low level render pipeline but it seems renderer itself can't be initialized for whatever surface levels use (like '3D Level Editor' pane). @plemsoft If you can prepare something that skips everything GGM and just does native primitiver render of red cube or something I think we can check if the problem is with GGM internals or AMD rendering (drivers/software/OS level conflicts)

plemsoft commented 1 year ago

@gedgeck @dennimoto Thanks yes i will need to think more about it and perhaps prepare something simpler :)

Just remembered, it look like present issue, could one of you try to edit the "setup.ini" file and change "vsync=1" to "vsync=0", do that do anything ?

gedgeck commented 1 year ago

@plemsoft Still the same, but thank for the tip, I'll try to play with it this weekend and see if it helps (backup taken) UPD: I also built latest WickedEngine (as that's what GGM is using, I believe) with VS CE 2022 and loaded 'terrain/props.wiscene' - it renders (if a tree, a bush and a stone is only that it contains). On the other hand it throws hundreds of shader compilation errors, I couldn't copy the text but here is a portion as a screenshot attached. That might be not related though, just some extra info if it can help you to figure it out sc_14-04-2023 20-38-40

plemsoft commented 1 year ago

@gedgeck Wicked now use hlsl6 DX12 so it will be different from the hlsl5 dx11 version we use.

Test 1.4 , nearly nothing left: https://drive.google.com/file/d/15w0iKJ7BhAmtUD5f1IKGCt9e3iYc7LWc/view?usp=sharing

Ensure you load "switch escape" and are in the level editor or everything will just be black (but you should see some of the objects in that level). If still black, try windows->"restore","maximize" any changes ?

Thanks for your help :)

gedgeck commented 1 year ago

@plemsoft Now I see bright red background when windows/surfaces switch (between GGM windows, game menus) but not before level starts rendering (at least that's how I perceive it). GGM main window background is pale red now and editor itself is still black. I was resizing windows manually and through window handler buttons but that didn't change rendering

UPD: If I randomly click at black screen objects are being selected and seen at 'Current Objects' and/or 'Object Tools'

AMD_test_1_4

P.S. Thanks for short explanation on Wicked

gedgeck commented 1 year ago

@plemsoft According to this article ( https://www.pcworld.com/article/393733/rdna-2-deep-dive-inside-amd-radeon-rx-6000-graphics-cards.html ) there are 2 distinctive differences between 5xxx and 6xxx (and further) - ray tracing and infinity cache, can you adjust app to check if this might be the issue somehow? I tried to disable Smart Access Memory (SAM) in BIOS already and it didn't help, tried to reverse RAM (DDR5) profile to default (not overclocking) - the same result.

plemsoft commented 1 year ago

@gedgeck Thanks i will look at those :) , we do know that the driver 22.5.1 is working, if i look at what happened in 22.5.2.

https://www.amd.com/en/support/kb/release-notes/rn-rad-win-22-5-2

Notice this comment: Known Issues:

Could you try to disable "Enhanced Sync" and see if that fix it, also they mention some of the additions "DirectX® 11 optimizations for Radeon™ RX 6000 series:" , could you also try to disable any hardware acceleration and see if that works.

Thanks for your help :)

plemsoft commented 1 year ago

@gedgeck As you suggested this one "test 1.5" removes all RX features from wicked dx11 , it start directly in the editor and only display a white box nothing else: https://drive.google.com/file/d/162RasokI-9U313zbAZXX9D7Eji5TogvK/view?usp=sharing

Could you try this with "Enhanced Sync" on and off , fingers crossed and thanks for your help :)

amd15

gedgeck commented 1 year ago

@plemsoft I tried latest build. GameGuru Hub window flashes and gones quickly and some empty level loads. It still is black. Whenever I try to go back to GameGuru Hub I'm being redirected to that empty/new level again. I tried with 'Enhanced sync' turned on/off globally/locally(GGM only), still the same. My previous screenshot didn't capture it as it was jpg but this new one shows (when zoomed) that some checkery background is rendered, it's not pure black. I'm not sure how I can disable hardware acceleration without uninstalling Adrenalin/GPU drivers completely at Windows. Do you want me to try uninstall Adrenalin? not-so-black

plemsoft commented 1 year ago

@gedgeck Could you try to make a renderdoc from the above screenshot , Thanks for your help :)

gedgeck commented 1 year ago

@plemsoft Here you are https://drive.google.com/file/d/19_4d2KbJMBqcV0NHw4ZkdIKrm8VsvCpD/view?usp=sharing

LeeBamberTGC commented 1 year ago

@plemsoft Let me know if you want me to take over this one, maybe a different pair of eyes can see a solution.