Author Topic: Using the Vulkan API instead of Direct3D9 in Hellgate London (1 fps bug gone?)  (Read 2337 times)

Dirk

  • Nameless
  • *
  • Posts: 18
  • Karma: 1
Hello dear Hellgate Community,

today I managed to get the game running via the Vulkan API instead of the standard Direct3D9 API. All you need is DXVK, a Vulkan-based translation layer for Direct3D. You need to copy the d3d9.dll in the 32 bit version out of the DXVK package (dxvk-2.3.tar.gz) into the Hellgate London\bin directory. And you're done. A nice side effect is that the 1 fps issue can almost completely disappear and the frametimes will also improve.

I have an AMD Ryzen CPU so I kinda won't face the 1 fps issue from what I read and I didn't have it so far. My girlfriend's notebook with an Intel CPU is the second device that I could test it on. So far the issue has not occurred with the Vulkan API, even not in Stonehenge. Very promising, let's hope the best that it also runs well at other PCs.
Hellgate @Vulkan API

A guide to how to install DXVK properly:


Regards


Edit:
This should also work for Hellgate: London Original Version and London 2038, since we have all needed dlls for d3d9 32 bit/x86, d3d10 32 bit/x86, d3d9 64 bit/x64 and d3d10 64 bit/x64. You will need both files, the d3d10core.dll plus dxgi.dll in the corresponding version (32 or 64 bit) for the Direct3D10 version (32/64 Bit) in the game folder, where the main executable file is (not the launcher). Playing the game with the Direct3D9 API only needs the d3d9.dll in 32 bit or 64 bit. It all depends on which game version (32/64 bit) you are using and which Direct3D API you have currently selected in the game options.

« Last Edit: Jan 31, 2024; 03:37 pm by Dirk »

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
In addition to uploading the file to the game directory, what else is required? What is vulkan api ?

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
Should I use a regular launcher to launch the game, or should I configure it to launch in a different way?

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
I use Augmentrix, but I don’t really like it when you get wet from all sides through the walls, so I want to try your method

Dirk

  • Nameless
  • *
  • Posts: 18
  • Karma: 1
In addition to uploading the file to the game directory, what else is required? What is vulkan api ?
You will need a videocard and a driver for your videocard that support the Vulkan API. Vulkan is a low-level low-overhead, cross-platform application programming interface and open standard for 3D graphics and computing. It was originally developed as Mantle by AMD in the past. It's a 3D API like OpenGL or Direct3D (part of DirectX) but much closer to the hardware. DirectX12/Direct3D12 by the way, is like Vulkan, very close to the hardware.
In Microsoft's words:
Quote
Direct3D 12 is unique in that it provides a lower level of hardware abstraction than previous versions do, which allows you to significantly improve the multi-core CPU scaling of your title (or other application). For one thing, with Direct3D 12, your title is responsible for its own memory management. In addition, by using Direct3D 12, your titles and applications benefit from reduced GPU overhead via features such as command queues and lists, descriptor tables, and concise pipeline state objects.
The Vulkan API is very similar to Direct3D 12.

What videocard do you have and which operating system are you using?
You can easily check, if your computer is supporting Vulkan with GPU-Z btw.
« Last Edit: Jan 20, 2024; 01:50 am by Dirk »

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
Core i7 4770k Nvidia gtx 1060

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
Windows 10 64x

Dirk

  • Nameless
  • *
  • Posts: 18
  • Karma: 1
Core i7 4770k Nvidia gtx 1060
Pascal GPU Architecture (GTX 1060) is indeed supported. Vulkan Driver Support. We are talking about Hellgate London - Steam Version, right?

Should I use a regular launcher to launch the game, or should I configure it to launch in a different way?
Doesn't matter, if the dll (d3d9.dll for example) is in the correct directory of Hellgate London (Steam), it will automatically translate all Direct3D data to Vulkan API.

BTW I found this on youtube. Didn't know there was somebody who tested this already. This youtuber also reports that it's much better with the 1 fps issue if you use DXVK/Vulkan over Direct3D9 as my own observations are at the Intel system (i7 7700HQ with a Nvidia GTX 1050Ti) of my girlfriend.

I'll keep my fingers crossed for you :).
« Last Edit: Jan 20, 2024; 12:01 am by Dirk »

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
That's right

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
Do I need to install a driver for this?

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
I have the studio driver installed

Dirk

  • Nameless
  • *
  • Posts: 18
  • Karma: 1
I am not 100 % sure but if you have an up-to-date Nvidia Studio Driver there should be Vulkan support already. You can always check it with GPU-Z if there is a check mark at Vulkan, as mentioned before and in the screenshot.
This Nvidia Studio Driver from 2020 already supported Vulkan 1.2 so every driver above this version should also have Vulkan support. We are at Vulkan 1.3 specification atm.
« Last Edit: Jan 20, 2024; 12:15 am by Dirk »

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
Ok thank you, I’ll try today and post the results, I’ll also need to test in the Tokyo location

Dirk

  • Nameless
  • *
  • Posts: 18
  • Karma: 1
I have also installed RTSS Rivatuner Statistics Server to make it visible with an OSD/Overlay which 3D API Hellgate is currently using as you can see in this image (first yellow line): Hellgate @Vulkan API.

You can make the used 3D API visible in RTSS standalone version (or MSI Afterburner that also has RTSS optional) with the following commands:
%FRAMERATE% - displays the used 3D API and framerate, for example „D3D11 : 120 FPS“
<APP> - displays the used 3D API in the game/application only (without the framerate)

EDIT:
Better don't use RTSS with Hellgate London (original version / 2007) and London 2038. It can cause issues like black screen etc.. Thanks to Daddy Crash195x2 for pointing this out. Only for checking purpose if you really really need a confirmation that Hellgate is running on Vulkan API. You can deinstall RTSS thereafter.
« Last Edit: Jan 20, 2024; 05:52 am by Dirk »

RomaMartin

  • Named
  • **
  • Posts: 146
  • Karma: 1
I have to disappoint you, it didn't work for me, Stonehenge and the cowshed hang in the first seconds