news
Games: Godot, FEX, and Lossless Scaling Frame Generation
-
Godot Engine ☛ Dev snapshot: Godot 4.5 beta 3
Gotta go fast!
-
FEX ☛ FEX 2507 Tagged
This month it was brought to our attention that the game Horizon Zero Dawn was running in slow-motion. Even though the FPS was relatively stable, the physics were all running at about a third of the speed! This turned out to be a pretty silly bug. WINE fills a registry key with the frequency of the cycle counter, but it first determines if the RDTSC is “reliable”. FEX was failing this reliability check which causes WINE to fall back to the maximum clock speed of the CPU. HZD would then use this value for the speed of its animations! A modern CPU can run its CPU at more than 3Ghz, while cycle counters on both ARM and x86 don’t go anywhere near as high! We fixed WINE’s “reliability” check inside of FEX, which means the registry key is filled correctly and the game now runs its animations at the correct speed.
This does mean that WINE technically still has a bug where if RDTSC is ever described as “unreliable” then you can end up with something up to 6Ghz in that registry key, which is incorrect but will reproduce this bug even without emulation playing a role.
As a side-note, ARM64ec WINE still isn’t fixed with this so the game will still have weird issues there under emulation. It’s getting fixed but will take some time!
-
Video Cardz ☛ Lossless Scaling Frame Generation has been ported to Linux
-
Lossless Scaling Is Getting Ported to Linux By The Community
-
Lossless Scaling's Frame Generation Lands on Linux, Works on Steam Deck
The popular third-party upscaling tool, Lossless Scaling, previously exclusive to Windows, has been ported to Linux with the release of the open-source lsfg-vk project. Developed by PancakeTAS, lsfg-vk utilizes Vulkan and the DXVK translation layer to bring the frame generation feature of the paid Windows application to Linux desktops and handheld devices, such as the Steam Deck. Until now, Linux gamers relied on FidelityFX Super Resolution frame generation only in titles where it was natively available. The lsfg‑vk promises to extend artificial intermediate frames to nearly any game. Rather than depend on in‑game integration, lsfg‑vk intercepts DirectX 11 calls and reimplements the Lossless Scaling pipeline on top of Vulkan.
Update
More on that last one:
-
Lossless Scaling frame gen on Linux gets some help from the original dev, next 3 steps outlined by creator
In case you missed it, the popular all-in-one upscaling and frame generation tool, Lossless Scaling, got a Linux port yesterday for the frame gen aspect of the tool. It’s very much a work in progress, and now, the fan-made project has been endorsed on the tools’ official Discord server (what doesn’t have a Discord server these days?). They were quick to point out that it is an unofficial port, however.
On top of that, the progress of the Linux version is now being tracked on the server, with contributor PancakeTAS announcing a few goals and hurdles for the project moving forward. Some good news is that THS, the creator of Lossless Scaling, is helping with some aspects of the project, such as translating it to the latest version of LSFG, v3.1.