Screen Flickering (AoM Patch 2.7.4511863, WDDM 1.1, DirectX 12 feature level 10_1)

Game Version:

  • Build 2.7.4511863

Issue:

When playing Age of Mythology Extended Edition on Windows 10 x64 v.1909, Intel Core i7 with AMD/ATI Radeon HD 4350 video card, there is an annoying twitching/flickering.
Sometimes it goes away by itself for some time, so the game can be perfectly playable.
Maybe the latest builds of the game delivered via Steam are not tested with WDDM 1.1 with DirectX feature level 10_1, so the introduction of the bug went unnoticed.
The video driver v.8.970.100.9001 for Windows 10 (Sign In to AMD Community - AMD Community) is provided via Windows Update:

Will DirectX® 9 and DirectX® 10 games be compatible with Windows® 10?
Yes. DirectX® 9 and DirectX® 10 games will continue to work in Windows® 10.

There are no screen twitching/flickering issues on the PC during regular usage, aside from this one with Age of Mythology via Steam.

On-screen videos with twitching/flickering:

(a) Settings menu, opened from Start screen - youtu.be/M_RQGRmFq7E

(b) Settings menu, opened from gameplay - youtu.be/QuYwY68RbgI

(c ) During gameplay, flickering could go away after opening/closing the Settings menu - youtu.be/CjmxThRISoQ

(d) Intro animation - youtu.be/OzK7-ZA3l1o

(e) About AOM EE 2.7.4511863, opened from Start screen - youtu.be/_szsFIpO0lM

DxDiag.exe output:

        ---------------
        Display Devices
        ---------------
       Card name: ATI Radeon HD 4300/4500 Series
    Manufacturer: Advanced Micro Devices, Inc.
       Chip type: ATI display adapter (0x954F)
        DAC type: Internal DAC(400MHz)
     Device Type: Full Device (POST)
      Device Key: Enum\PCI\VEN_1002&DEV_954F&SUBSYS_E990174B&REV_00
   Device Status: 0180200A [DN_DRIVER_LOADED|DN_STARTED|DN_DISABLEABLE|DN_NT_ENUMERATOR|DN_NT_DRIVER] 
        Device Problem Code: No Problem
         Driver Problem Code: Unknown
  Display Memory: 6385 MB
Dedicated Memory: 497 MB
   Shared Memory: 5888 MB
    Current Mode: 1920 x 1080 (32 bit) (60Hz)
     HDR Support: Not Supported
Display Topology: Internal
         Display Color Space: DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709
 Color Primaries: Red(0.638672,0.337891), Green(0.296875,0.616211), Blue(0.151367,0.052734), White Point(0.313477,0.329102)
           Display Luminance: Min Luminance = 0.500000, Max Luminance = 270.000000, MaxFullFrameLuminance = 270.000000
    Monitor Name: Generic PnP Monitor
   Monitor Model: PHL 240V5
      Monitor Id: PHLC10A
     Native Mode: 1920 x 1080(p) (60.000Hz)
     Output Type: DVI
        Monitor Capabilities: HDR Not Supported
        Display Pixel Format: DISPLAYCONFIG_PIXELFORMAT_32BPP
  Advanced Color: Not Supported
     Driver Name: aticfx64.dll,aticfx64.dll
         Driver File Version: 8.17.0010.1129 (English)
  Driver Version: 8.970.100.9001
     DDI Version: 10.1
  Feature Levels: 10_1,10_0,9_3,9_2,9_1
    Driver Model: WDDM 1.1
         Graphics Preemption: DMA
          Compute Preemption: DMA
        Miracast: Not Supported
  Detachable GPU: No
         Hybrid Graphics GPU: Not Applicable
  Power P-states: Not Applicable
  Virtualization: Not Supported
      Block List: No Blocks
          Catalog Attributes: N/A
           Driver Attributes: Final Retail
Driver Date/Size: 1/13/2015 3:00:00 AM, 1094024 bytes
     WHQL Logo'd: Yes
 WHQL Date Stamp: Unknown
           Device Identifier: {D7B71EE2-D60F-11CF-9270-9AC9BEC2C535}
       Vendor ID: 0x1002
       Device ID: 0x954F
       SubSys ID: 0xE990174B
     Revision ID: 0x0000
          Driver Strong Name: oem12.inf:cb0ae4148d05d541:ati2mtag_R7X:8.970.100.9001:pci\ven_1002&dev_954f
  Rank Of Driver: 00D72001
     Video Accel: ModeMPEG2_A ModeMPEG2_C 
     DXVA2 Modes: DXVA2_ModeMPEG2_IDCT  DXVA2_ModeH264_VLD_NoFGT  DXVA2_ModeVC1_VLD  
     Deinterlace Caps: {6E8329FF-B642-418B-BCF0-BCB6591E255F}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive 
                 {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch 
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YUY2,YUY2) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY 
                 {6E8329FF-B642-418B-BCF0-BCB6591E255F}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive 
                 {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch 
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(UYVY,UYVY) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY 
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(YV12,0x32315659) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
                 {3C5323C1-6FB7-44F5-9081-056BF2EE449D}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,2) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive 
                 {552C0DAD-CCBC-420B-83C8-74943CF9F1A6}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,2) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive 
                 {6E8329FF-B642-418B-BCF0-BCB6591E255F}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,1) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_PixelAdaptive 
                 {335AA36E-7884-43A4-9C91-7F87FAF3E37E}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY DeinterlaceTech_BOBVerticalStretch 
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(NV12,0x3231564e) Frames(Prev/Fwd/Back)=(0,0,0) Caps=VideoProcess_YUV2RGB VideoProcess_StretchX VideoProcess_StretchY 
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC1,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC2,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC3,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(IMC4,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(S340,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
                 {5A54A0C9-C7EC-4BD9-8EDE-F3C75DC4393B}: Format(In/Out)=(S342,UNKNOWN) Frames(Prev/Fwd/Back)=(0,0,0) Caps=
    D3D9 Overlay: Not Supported
         DXVA-HD: Not Supported
    DDraw Status: Enabled
      D3D Status: Enabled
      AGP Status: Enabled
   MPO MaxPlanes: 1
        MPO Caps: Not Supported
     MPO Stretch: Not Supported
 MPO Media Hints: Not Supported
     MPO Formats: Not Supported
PanelFitter Caps: Not Supported
         PanelFitter Stretch: Not Supported

Reproduction Steps:

  1. Download Age of Mythology via Steam platform to Windows 10 x64 with WDDM 1.1 driver (can check using built-in dxdiag.exe tool, which would show WDDM 1.1, DirectX 12 feature level 10_1).
  2. Launch the game, notice the uncomfortable twitching/flickering, as shown in attached screenshot and linked onscreen videos.

Thank you.

You’ll probably want to use AMD drivers. https://www.amd.com/en/support

Of course, this seems to be the latest official driver by AMD:

AMD

I meant to get the latest one from their website directly.

Drivers from AMD web-site are dated 2012-2013, so I was hesitant to move away from WHQL 2015, to avoid creating any issues.

However, following your advice I removed the 2015 driver, downgrading to Microsoft Basic Display Adapter, modified Device Installation Settings to prevent automatic driver installation (otherwise Windows 10 quickly re-downloads and installs the WHQL 2015 driver). Then installed the driver from AMD web-site, which required allowing a driver signed by AMD itself (not Microsoft):

6-AMD-2013

AMD web-site driver has Hardware Acceleration enabled, such as H.264, where WHQL driver has it disabled, so it is indeed surprisingly superior in some ways!

Unfortunately, the AoM problem persists: https://youtu.be/LvJWFHBDRIo

Thank you for trying.

The GPU may simply be too old (2008 release) - the artifacting is likely caused by DirectX or driver incompatibility.
Besides that, it is well below the recommended specs.

RECOMMENDED:

  • OS: Windows 7, 8.1+

  • Processor: 2.6 Ghz

  • Memory: 4 GB RAM

  • Graphics: Direct X 11+

  • DirectX: Version 11

  • Storage: 5 GB available space

  • Additional Notes: GeForce 9800GTX, Radeon 4850+

I’m pretty sure that compatibility testing was negligible on AoM EE, plus the min specs are untrue for the most part, so I’d expect you’re screwed in this situation, but I’ll see if the devs would like to comment. Really no idea what a GPU that only supports up to DX 10.1 will do in this game.

Edit: got the details wrong, found the actual specific GPU I think it must be - points still apply.

Regardless, based on your footage, the card absolutely appears to be below minimum playability in terms of performance.

I’d recommend trying to grab an AMD RX 570 - you’ll get around 70 average FPS in 1080p, which is definitely worth the 100-120$ it costs. Better deals may pop up as 2020 will bring newer hardware - follow tech youtubers that do independent reviews!

Thanks a lot for your feedback and advice regarding the RX 570 video card for the most enjoyable FullHD experience, seems to be the best option going forward - 2753% of my current card, according to your link!

The reason for choosing the current video card was its fanlessness, sacrificing performance for less noise during regular work.

For a person who played Warcraft in MS-DOS times in 1990s, AoM even with minimal graphics at 1280x720 still looks wonderful.

In case fixing this does not take a huge amount of developer resources (the 2002 game used to work on such hardware w/o flickering, and still does, when it is not flickering), hope Microsoft will consider doing this, like Apple did with iOS 12 last year, making older devices comfortably usable again and improving the experience across the board (https://9to5mac.com/2018/06/05/ios-12-speed-test-heres-how-fast-ios-12-runs-on-older-devices).