AlpyneDreams / d8vk

Direct3D 8 to Vulkan translation for DXVK! Merged into dxvk: https://github.com/doitsujin/dxvk
zlib License
486 stars 6 forks source link

[Request]: Compile to a 64 bit DLL too. #195

Closed LinuxBoys closed 2 days ago

LinuxBoys commented 6 months ago

Hi, I'm new on Linux world and also on github so sorry if I text too much.

THE REQUEST: I would love to have on my Wine-GE-Proton the D8VK as 64 bit too, for some weird and rare games, the WineD3D is bad in term of Vulkan and OpenGL is OpenGL (weak and buggy sometimes), please make this feature possible it won't make things difficult for you, it makes for others if they don't found a good "d3d8.dll" to run under Vulkan instead of OpenGL and makes things more beauteful with ReShade.

Thanks for 32 bit too, it makes my Scrapland Remastered and Project Nomads to run as in Windows does instead of WineD3D (OpenGL) with low FPS and sometimes crashes.

Have a nice day and I wish all good to developers and contributors.

WinterSnowfall commented 6 months ago

... FYI there are literally no 64-bit d3d8 games out there (other than maybe wierd tech demos someone came up with when the API was already being phased out), however on our main branch we already compile a 64-bit version of d3d8.dll as well. IIRC it was one of the requirements of the ongoing (and hopefully soon-ish to complete) upstreaming to dxvk.

LinuxBoys commented 6 months ago

Hello again and sorry if I responded late, I try to make custom settings for picom for maximum performance I can obtain in Bottles/Wine-GE-Proton.

Can you give me the link of the main branch that have 64 bit in there?

Is first time using github and I don't know what a branch is.

Have a nice day and chill coding I guess.

WinterSnowfall commented 6 months ago

Can you give me the link of the main branch that have 64 bit in there?

The "main" branch is what you see by default when you open up the project's GitHub page. If you're asking for the binaries (dlls), automated builds are run after each commit and you can see and download their artifacts by looking under Actions -> Artifacts (Package) and picking the latest entry. The archived (zip) binary package is at the bottom of the page (you need to be logged in to see it).

Unfortunately, since the project hasn't had any commits in a while, all of these builds have expired. The only way to get the binaries at the moment is to compile them yourself. Or you could just wait for development to resume, which would generate new builds containing both 32-bit and 64-bit dlls.

Is first time using github and I don't know what a branch is.

A branch is not a GitHub specific term, rather something commonly used in version control. If you're interested in open source software and/or software development it's worth spending some time to familiarize yourself with these concepts.

Have a nice day and chill coding I guess.

Thank you, and happy "retro" gaming to you as well :).

LinuxBoys commented 6 months ago

Ok thanks, and another questions is: This D8VK is abandoned? If not abandoned it will merge with DXVK? Any idea when the merge will be? Will come with 64 bit as release? Artix Linux with DINIT and LXDE with PICOM and Bottles is good for gaming? Too many questions?

Thanks in advice for supporting me and I really appreciate the time spent with me in helping with gaming stuff.

WinterSnowfall commented 6 months ago

This D8VK is abandoned?

No.

If not abandoned it will merge with DXVK?

Yes.

Any idea when the merge will be?

You can watch the above PR for activity. It will have to be reviewed first.

Will come with 64 bit as release?

The first dxvk release post d8vk merge will very likely include a 64-bit d3d8 dll, yes. Mind you this is mostly for convenience (and because Wine/Proton also ships one), not because there are any 64-bit d3d8 games out there. Because there really aren't.

Artix Linux with DINIT and LXDE with PICOM and Bottles is good for gaming?

In terms of performance, I won't sweep things under the rug: you're paying a tax when using Linux for gaming. How big that performance tax is depends mainly on your choice of GPU vendor, especially in conjunction with d8vk/dxvk/vkd3d-proton, since RADV (AMD) usually performs best in most cases.

On a second note, I'd stick with using Proton in Bottles, since it is specifically targeted at gaming and comes with a wide variety of fixes and performance optimizations.

Too many questions?

If they're mostly on topic, nobody will mind. I'm around and will answer whatever I can when I get the time :). That being said, this is an issue tracker, not a forum... or Discord.

Thanks in advice for supporting me and I really appreciate the time spent with me in helping with gaming stuff.

You're welcome.

LinuxBoys commented 6 months ago

PR? What is this alien code? :))

Also is a known Nvidia driver and OC method with Boost Locked at max and always as EVGA does in their software in order to take all the juice I can from it?

My 1030 can handle 2000 MHz in Windows 11 but can't in 10 IDK why, Linux feels like Win 11 but better and 100% customizable and impossible to kill the system :)

And about the performance, with this system/OS I can reach 60 min FPS and 80 FPS max in Two Worlds 2 at max with Motion Blur too at stock Nvidia settings but is Power limited at 30W and Temp but on Windows can have 96 (at 97 is buggy and shutdown my GPU for 1 or 2 minutes) temp limit while in Linux is sock and I don't know how to rise this limit like in Windows with the EVGA Precision X.

Any tips for Nvidia GPU and Intel CPU users?

WinterSnowfall commented 6 months ago

PR? What is this alien code? :))

PR = Pull request. We like our acronyms around here :).

Also is a known Nvidia driver and OC method with Boost Locked at max and always as EVGA does in their software in order to take all the juice I can from it?

That's something best discussed elsewhere. While I am on Nvidia (for CUDA reasons mostly), I'm not overclocking my card, so wouldn't know.

Any tips for Nvidia GPU and Intel CPU users?

Driver and graphics developers usually optimize all they can to get you the best performance possible already, however a realistic tip would be to plan your GPU purchase with a little extra hardware capability in mind, to account for the incurred performance loss.

LinuxBoys commented 6 months ago

Thanks for any info you gave me, I will let you to do your best for this project and others related to this. Close this [Request] when is merged or have a 64 bit in release, even if I don't reply back here with exception if some info is needed from devs/com to give them.

Have a nice day and thanks, BTW Enclave one of the games with D8VK is running but have terrible performance like 12-16 max and don't see my native resolution which is 1680x1050 compared to WineD3D which sees my monitor resolution and have over 60 FPS but have terrible input lag or high frametime spikes, some investigation between WineD3D and D8VK is required to see why is acting like this.

WinterSnowfall commented 6 months ago

[...] Enclave one of the games with D8VK is running but have terrible performance like 12-16 max.

Nice catch. Seems like I missed this one during my latest set of tests, but the good news is that I know what this is about. I'll submit the required changes shortly, however if you want to play the game with good performance until a new release is out, you need to create a file called dxvk.conf right next to the game's Executable (same directory) and add the following line to it:

d3d8.managedBufferPlacement = False

In case you notice any performance issues with other games feel free to raise a separate issue or report them here: https://github.com/AlpyneDreams/d8vk/issues/147.

[...] don't see my native resolution which is 1680x1050

d8vk/dxvk uses the resolutions your driver reports as supported in general, however with older games there may be some issues when too many resolutions are exposed (some may get cut off). This is more of a dxvk problem and it's being looked into over there.