Adobe-Runtime-Support icon indicating copy to clipboard operation
Adobe-Runtime-Support copied to clipboard

The application only shows the background color on AMD Radeon Drivers Adrenalin 22.6.1

Open jeremyheo-nsuslab opened this issue 2 years ago • 16 comments

Problem Description

The application only shows the background color on AMD Radeon Adrenalin 22.6.1 It works properly with old Adrenalin version. (22.5.1, 22.4.2, ...)

  • Air SDK Version : 33.1.1.856

Steps to Reproduce

  1. The Application built with xml description ...
<application xmlns="http://ns.adobe.com/air/application/33.1">
    <initialWindow>
        <renderMode>direct</renderMode>
        <depthAndStencil>true</depthAndStencil>
        <systemChrome>none</systemChrome>
        <maximizable>false</maximizable>
        <resizable>false</resizable>
        <transparent>false</transparent>
         ....
    </initialWindow>
</application>
  1. it runs on...
  • OS : Window 10 64 bit
  • Graphic Adapter : AMD RX 6500 XT
  • Graphic Driver : Adrenalin version 22.6.1
  1. it only shows the background color Snipaste_2022-06-09_18-13-41

Known Workarounds

I found some working properly case.

  • Change transparent set true -> It works properly but i need to draw background.
<application xmlns="http://ns.adobe.com/air/application/33.1">
    <initialWindow>
         ....
        <transparent>true</transparent>
         ....
    </initialWindow>
</application>    
  • Change renderMode set cpu -> It works properly but i use starling framework (it need direct rendermode).
<application xmlns="http://ns.adobe.com/air/application/33.1">
    <initialWindow>
         ....
        <renderMode>cpu</renderMode>
         ....
    </initialWindow>
</application>    

jeremyheo-nsuslab avatar Jun 09 '22 09:06 jeremyheo-nsuslab

Hi So while we'll continue to try to work out what part of Direct3D 11 is causing the problem, a workaround here would be to limit your app to Direct3D 9. There's a new capability added into the app descriptor file, see below:

	<windows>
		<maxD3D>9</maxD3D>
	</windows>

If you put 9 there, we will use Direct3D 9 rather than the default of Direct3D 11. If you put anything lower, it will restrict it to software rendering/emulation.

ajwfrost avatar Aug 05 '22 05:08 ajwfrost

@ajwfrost I have a similar problem with a game made in adobe air, when I start it I only see a black background with an indicator and music, all after installing new 22.6.2 adrenaline drivers. I don't know where to put this "windows maxD3D" tag

LeeTomahawk avatar Aug 16 '22 16:08 LeeTomahawk

@LeeTomahawk the tag should go into your application descriptor file e.g.

<?xml version="1.0" encoding="utf-8" ?> 
<application xmlns="http://ns.adobe.com/air/application/33.1">
	
	<id>...</id> 
	<versionNumber>1.0</versionNumber> 
	<filename>...</filename> 
	<windows>
		<maxD3D>9</maxD3D>
	</windows>
...
</application>

It would need to have that namespace value ending in 33.1 to pick up the validity of this though..

thanks

ajwfrost avatar Aug 17 '22 06:08 ajwfrost

Hi all

Can I get some more details on the graphics drivers here please: can you try:

  1. Hit Windows-X key and select “Device Manager”
  2. Expand “Display Adapters” .. hopefully you have one saying “AMD Radeon” or similar
  3. Double-click on this and choose “Driver” to then see information about the driver version

Ideally if you can screenshot that "Driver" information and dump it here, we can look at a better workaround... but we're also trying to get hold of a suitable machine for fixing the underlying issue.

thanks

ajwfrost avatar Aug 17 '22 10:08 ajwfrost

Hi all

Can I get some more details on the graphics drivers here please: can you try:

  1. Hit Windows-X key and select “Device Manager”
  2. Expand “Display Adapters” .. hopefully you have one saying “AMD Radeon” or similar
  3. Double-click on this and choose “Driver” to then see information about the driver version

Ideally if you can screenshot that "Driver" information and dump it here, we can look at a better workaround... but we're also trying to get hold of a suitable machine for fixing the underlying issue.

thanks

image

LeeTomahawk avatar Aug 17 '22 10:08 LeeTomahawk

Thanks - a little bit higher than that would be good too, so we know the name used for the adapter! and given the driver version there is 31.0, vs the 22.6 value mentioned earlier, can you confirm where the 22.6.x came from? Maybe if you click on "Driver Details" one of the files in there would have this version code on it?

thanks

ajwfrost avatar Aug 17 '22 10:08 ajwfrost

image Only one file with version 22.x.x

LeeTomahawk avatar Aug 17 '22 10:08 LeeTomahawk

Hello all. I think that the driver version is 31.x.x and Adrenalin Release Version is 22.8.1 ( https://gpuopen.com/version-table/ )

@ajwfrost I wonder if there are any performance-related side-effects when I limit my app to Direct3D 9. and i want to how to limit it on run-time without xml descriptor.

jeremyheo-nsuslab avatar Aug 22 '22 06:08 jeremyheo-nsuslab

Okay thanks... so it's possible we could add a condition to check the driver details and version and then automatically limit things. Although this may be a bit of effort and given the actual bug - which is in a fairly straightforward bit of code - I'm thinking we should actually focus on a fix for this instead.

In terms of performance, there may be a slight slow-down if using the older D3D version but I wouldn't imagine it would be particularly large. From the looks of the code, the support for v11 was more to fit in with some IE/Edge changes for the Flash Player rather than it being originally intended for AIR.

It's not possible to change the setting at run-time though as this is all used in some of the initial bootstrap code which happens prior to your user code execution i.e. when we create the window for displaying the content, before your main constructor is then called.

Our IT team haven't been able to find an appropriate machine for us to test with here so I may need to send you another debug build so that we can try to get to the bottom of this one....

thanks

ajwfrost avatar Aug 22 '22 07:08 ajwfrost

But I found out some problem with dx9. (ex. the Context3D could be lost with lock screen.) And I don't think it makes sense to use dx9 for all users for some users. So I can't apply to limit d3d to my application.

jeremyheo-nsuslab avatar Aug 23 '22 11:08 jeremyheo-nsuslab

What is the status?

I have a few clients with the same problem. I know the directx9 is a temporal workaround, but it shouldn't see the solution. The Context3D is lost when the computer is suspended + the performance hit they could get.

aW4KeNiNG avatar Nov 18 '22 08:11 aW4KeNiNG

@aW4KeNiNG Drivers 22.11.1, fix this problem (i have rx 6600xt)

LeeTomahawk avatar Nov 20 '22 10:11 LeeTomahawk

Hey @ajwfrost - I noticed this issue is still open, though I see a comment from @LeeTomahawk that this issue is resolved with latest AMD drivers. Just wanted to check in as its been a few months and I'd love to remove the temporary workaround of downgrading to DirectX9 as I'm concerned this has performance tradeoffs for other users.

RossD20Studios avatar Apr 16 '23 21:04 RossD20Studios

Hi @RossD20Studios - we had looked to see if we could workaround ourselves to fall back to DX9 if we had detected these particular driver versions, but there didn't seem to be a straightforward way to find out which version numbers they were... so, currently this is still just dependent then upon whatever version the end users will have.

So I think it may be that switching back to Direct3D 11 may cause some issues for people if they've got older drivers, but hopefully it's something that they could be directed to update?

thanks

ajwfrost avatar Apr 17 '23 00:04 ajwfrost

Hi.

These months have been working fine, but now I have a new user with the same issue and the latest graphics card drivers using the AMD rx 6650xt model.

image

Can anyone confirm if this is happening again?

aW4KeNiNG avatar Apr 24 '23 18:04 aW4KeNiNG