Ray tracing for old games: NVIDIA RTX Remix tested

RTX Remix?

Sometimes people say that today’s games don’t measure up to the old ones and don’t offer much besides visuals. But what if modern visuals could be added to classic games that are even twenty years old? NVIDIA’s RTX Remix technology (or software) is supposed to do just that, making it relatively easy to add better graphics to even very old games using a mod – including raytracing effects and things like DLSS or DLAA. Let’s see how it works.

Disclaimer: This article was commissioned by NVIDIA and is paid for. However, the company did not interfere with its content in any way, and the only requirement was to test a few old games with new technologies in RTX Remix.

What is RTX Remix

RTX Remix is a technology that NVIDIA unveiled in September 2022 at the same time that GeForce RTX 4000 graphics cards were coming out. It is a tool and runtime for creating modifications and (usually) fan-made “remasters” of older games and enhancing them with higher quality and more modern graphics, including bleeding-edge effects such as ray tracing.

Modifying games, which often takes them in unexpected directions, is something that has been done before by various enthusiasts. But RTX Remix should make such modding massively easier, while expanding its possibilities. We can already see that in action, as raytracing “RTX” game mod projects are springing up in numbers that probably wouldn’t even be conceivable without RTX Remix.

Portal remastered with full path tracing (Portal with RTX)

The basic problem with modding games is that developers cannot usually work with the source code of a game (with exceptions like Doom, Quake) and add new functionality to the program, which precludes adding raytracing code to existing games. Furthermore, older titles usually rely on outdated and limited APIs, while ray tracing in games requires the use of DirectX 12 or Vulkan. Not to mention that most of these will be 32-bit programs, so they don’t support the amount of RAM footprint that the modernized visuals would require. In many cases, however, almost any modifications, even simple ones, face major hurdles because there are no tools available to create the content for the game.

A universal way to “hijack” and change game visuals

RTX Remix gets around this in an interesting way. Modifications are not created by conventional game files editing, but in an indirect way. RTX Remix uses a special runtime that is inserted (injected) into the game’s rendering process, which intercepts all the calls to the graphics driver that the game uses to create the game’s visuals and scene as it runs.

RTX Remix

First of all, the runtime analyzes the game and compiles information about how the game scenes are created, what objects are used in them (their polygon models) and what textures they have, as well as the lighting and camera angles of the game. Later, a similar process with the RTX Remix runtime injected is used to modify the objects directly in the running game.

Level editor and object catalogue for any game

The data obtained from this “real-world” analysis of the game scene is then used by NVIDIA RTX Remix to rebuild the scene outside of the game and outside its original engine, essentially replacing the development environment (level editor) and its viewport. It shows a preview of the scene and allows you to view and modify it. It provides a catalog of objects and effects found in the scene, including their modifications.

RTX Remix

This is where the advanced modding and graphics enhancement options begin. RTX Remix converts the objects (and the entire scene made up of them) that have been extracted from the game in this way (basically, you could say they have been observed and “scanned”) into the USD (Universal Scene Description) format. And in this format, you can start working on enhancing and adjusting them into better versions that will eventually be wrapped into the final mod.

The scene elements don’t always (and probably usually won’t always) automatically transfer between the game and RTX Remix reworked version with 100% correctness. It is expected that the modder will still have to do their own work, for example, adjusting the placement or behavior of some objects that don’t work correctly with the conversion, and dealing with any issues that may arise when importing and exporting and hooking the RTX Remix runtime into the game. The functioning of this technology is quite a complex process, and the games themselves as well are a complex apparatus with various peculiarities and atypical behaviors that can manifest themselves in unexpected bugs and incompatibilities when the game is interfered with in ways that the original developers were not expecting.

Tools require GeForce RTX, these emerging mods do not

RTX Remix’s technical solution is plugged into NVIDIA Omniverse technology, which provides a collaborative environment for working with 3D graphics and linking with other important tools (3ds Max, Autodesk May, Blender, Unreal Engine, and so on) where a modder can, for example, create new and improved models. At the same time, it allows collaboration with many other enthusiasts, making it easier for modders to work as a team.

RTX Remix also has its limitations. The development part can only be used on NVIDIA GeForce RTX graphics cards (or professional NVIDIA RTX GPUs). The RTX Remix runtime tools and Omniverse tools are needed to develop RTX Remix-based modifications, so the modder must have an NVIDIA graphics card (at least for Omniverse).
However, the modification itself is no longer limited in this way. It also needs to have a packaged runtime (which is open source, by the way) that intercepts the original game calls and replaces them with modified calls and new game objects. This part of the process should already work on any GPU (or at least in theory) that has the necessary features, i.e. support for DirectX 12 Ultimate and ray tracing acceleration.

However, one problem for use on other graphics cards is that RTX Remix only adds DLSS upscaling support (no XeSS or FSR), so you’ll only be able to use native resolution on competitor graphics cards, which the cards may not have the performance for as RTX Remix mods using full ray tracing are highly demanding. Users also report poor performance with specific mods (poor FPS even at low resolutions like 800×600), so it’s questionable how well the RTX Remix runtime works on non-NVIDIA graphics cards, or at least at the moment.

RTX Remix

Which games can (and cannot) use RTX Remix: Technical limitations

Runtime RTX Remix currently supports games running on top of the DirectX 8 and DirectX 9.0 to 9.0b APIs. Games using DirectX 7 and older are not directly supported. At least in some cases, however, RTX Remix should be able to be used on them, but only if they work with a wrapper that converts them to DirectX 9. The problem is games requiring DirectX 9.0c, where RTX Remix does not work easily, unlike games using DirectX 9.0b and older. Games using OpenGL or non-PC games do not work with RTX Remix (theoretically they could with a working wrapper that converts their calls to DirectX). RTX Remix also cannot be used with games using DirectX 10 and newer.

An important restriction is that the game must use the so-called fixed-function pipeline, the standard way of working with geometry and textures in older games (usually, you can spot such games based on whether they support running on GeForce 2 graphics cards, which are the last generation with without shader support). Later games  started to replace fixed-function rendering with a model using primarily shaders and shader-defined objects (such a game may typically specify a GeForce 3 as the minimum requirement). Objects defined by shaders do not work in RTX Remix. It’s theoretically possible that support for such newer games will eventually appear in RTX Remix at some point, but it’s a much more challenging task that is not yet planned to be implemented. Otherwise, the technology will still need further development before it is perfect in fixed-function games, which is a priority for now, before work on other ambitious goals can be started.

Exporting from RTX Remix creates a modification that should (at least in theory, in practice you may encounter bugs and individual incompatibilities) be very easy to use – just copy it to the original game folder and run it. The RTX Remix runtime already takes care of converting the game calls to the Vulkan API, so even some games quarter-century old now can be drawn via a modern rendering pipeline. And at the same time, all the old objects in the scenes you’re traversing in the game will be replaced with new, improved ones.

And yet you’re still playing the original game, which is basically unaware of these modifications. And that’s important, because all the original mods you’ve accumulated over the years will work in it, as well as the original save positions, cheats, character editors, and so on. However, RTX Remix does use DLL injection of code into the program. Thus, this modification is likely to be detected as cheating by anti-cheat software, which prevents the use of such mods in multiplayer games (because you would likely get promptly banned).

Scene from TES III: Morrowind, manually remastered in RTX Remix using NVIDIA Omniverse collaborative features. This scene was a technical demo, not a project seeking to modify the game (for now)

The fact that RTX Remix brings the game rendering onto modern graphics API opens up the possibility of using new features like DLSS, including Frame Generation, and ray tracing (but also Ray Reconstruction or Reflex technology). This is done in real time directly while playing and the original game program is not affected. Because of this, RTX Remix can replace visuals even in a game for which there is no documentation at all, no development tools or tools to work with, and so on.

What RTX Remix makes possible

If the goal of a game modification is to update the game’s visuals overall, RTX Remix allows for a total replacement of the game’s models and textures by capturing them from the game. Textures can be given better resolution (AI upscaling tools can be used to do this) or they can be replaced entirely with new, hand-made ones. Even models can be completely replaced with new ones.

RTX Remix can engage AI here, so manual adjustments are far from the only way to go. In addition to AI texture upscaling, which is something you’ve may have already seen in many existing game mods even before RTX Remix, it can also use AI analysis to estimate the physical properties of the materials (for physically-based rendering) of a game scene and add them to individual objects. This can significantly improve the realism and quality of the visuals. It is also possible to add normal maps and reflectivity information to existing textures, which will then allow game lighting to be added using ray tracing rendering, including full Path Tracing.

RTX Remix also allows you to add newly designed lighting to the scene, which can then be ray traced in-game to completely change the character of your games. RTX Remix also has a special “Light” mode for this purpose, where lighting is easier to adjust.

RTX Remix: Light mode for working with lights

Lighting makes a massive difference in game visuals, and in most older titles it’s quite primitive (and of course very unrealistic). With realistic light sources and handling the diffusing and fading of their glow in the environment, with reflections and shadows, the scene can take on a whole different level of realism. However, this changes the visuals a lot, which can often make scene significantly darker; without manual adjustments, you may even have trouble seeing anything in the scenes, as the original level design didn’t account for the behavior of light at all. Modifications therefore often add a flashlight tool to the game, which you can use to help yourself in situations where it’s too dark.

The nature of the games is obviously changed by these modifications (and with lighting this is very noticeable), so the question is whether this is desirable. A game as a whole is essentially a work of art, and its original visuals, including how they were influenced by the technological limitations of the time, form its character. That’s probably why RTX Remix or other remakes shouldn’t be treated as replacements for the original. But as long as we don’t let the old game disappear (which, fortunately, isn’t facilitated the way RTX Remix works) and we understand that we are playing an alternative, “remade” or upgraded version of the game, these modifications certainly have their place as can give the game a new appeal.

The article continues with further chapters.


⠀⠀

  •  
  •  
  •  
Flattr this!

Leave a Reply

Your email address will not be published. Required fields are marked *