As you might recall, NVIDIA released the remastered Quake II RTX for free back in June 2019. In-house developer Lightspeed Studios took the work of Christoph Schied with Q2VKPT and brought it to the next level with new path-traced visual effects, improved texturing, and more.
Last Friday, Quake II RTX received a big new patch, version 1.6. The developers added a bunch of new features, though the most interesting ones came directly from the community, as GitHub user @res2k introduced support for AMD's FidelityFX Super Resolution (FSR) and for High Dynamic Range (HDR) displays.
The game now supports AMD FSR, but what about NVIDIA DLSS? Sadly, in a somewhat ironic turn of events, NVIDIA's prized Deep Learning Super Sampling cannot be added because of the GPL license used by Quake, as confirmed by developer AlexP on the Quake II RTX Steam forum.
Intel's upcoming AI-powered image reconstruction technology called XeSS could be added to Quake II RTX, though, since it's going to be open source.
Meanwhile, here's some footage of the game running on an AMD RX 6800 GPU with FSR enabled, captured by YouTube user CozMick.
Breaking Changes in Quake II RTX 1.6
Re-designed the material definition system for flexibility and modding.Removed support for the VK_NV_ray_tracing Vulkan extension, which is superseded byVK_KHR_ray_tracing_pipeline and VK_KHR_ray_query that were added earlier.New Features in Quake II RTX 1.6
Added a setting to enable nearest filtering on world textures, pt_nearest.Added a setting to enable the use of texture and model overrides in the GL renderer, gl_use_hd_assets (https://github.com/NVIDIA/Q2RTX/issues/151)Added support for converting sky surfaces into lights based on their flags, see pt_bsp_sky_lights.Added support for IQM models and skeletal animation for the RTX renderer.Added support for making any models translucent, and cl_gunalpha specifically.Added support for masked materials (https://github.com/NVIDIA/Q2RTX/issues/127)Added support for polygonal light extraction from MD2/MD3/IQM models.Added support for smooth normals on the world mesh through a BSPX extension.Added support for unlit fog volumes. See the comment in fog.c for more information.Enabled game builds for ARM64 processors.Extended the "shader balls" feature to support arbitrary test models with animation.Fixed Issues in Quake II RTX 1.6
Fixed a crash that happened when loading a map with non-emissive lava material.Fixed loading of multi-skin MD3 models.Fixed long texture animation sequences.Fixed some bugs in the model validation codeFixed some self-shadowing artifacts by increasing the shadow and bounce ray offsets.Fixed some unlit or partially lit triangles by improving the BSP cluster detection logic.Fixed the MZ_IONRIPPER soundFixed the rcon_password variable flags to prevent the password from being storedFixed the background blur behavior when the menu is opened on a system with over 24 days of uptime.Fixed the barriers in non-uniform control flow in the tone mapping shaderFixed the buffer flags on the acceleration structure scratch bufferFixed the crash that sometimes happened when entering The Reactor mapFixed the disappearing light surfaces on some polygons with almost-collinear edges.Fixed the lighting on the first person weapon when it's left-handed.Fixed the missing frame 0 in repeated entity texture animations.Fixed the pipeline layout mismatch in asvgf.cFixed the rendering of the planet's atmosphere in the space environment.Fixed the sampled lighting estimator math, improved specular MIS.Misc Improvements in Quake II RTX 1.6
Allowed changing the VSync setting without reloading the renderer.Extended the supported light style range to 200% to fix over-bright lighting.Implemented anisotropic texture sampling for objects seen in reflections and refractions using ray cones.Improved CPU performance by not re-allocating the TLAS on every frame.Improved the handling of transparent effects in the acceleration structures.Removed the fake ambient that was added when global illumination is set to "off".Removed the initialization of the async compute queue, which was unused. This improves rendering performance and fixes some compatibility issues with AMD drivers.Removed the MAX_SWAPCHAIN_IMAGES limit for XWaylandReplaced the implementation of model data handling on the GPU to improve scalabilityReplaced the material BRDF with a more physically correct one and removed the non-linear albedo correction function.Replaced the normal map normalization on load with a compute shader to speed up engine startup and map loading.Contributions by GitHub user @res2k:
Added auto-complete for the ray_tracing_api console variableAdded support for AMD FidelityFX Super ResolutionAdded support for HDR monitorsAdded support for synthesizing emissive textures and fixing lighting in custom mapsAllowed saving and loading games in expansion packsFixed a crash due to invalid clusters on some world geometryFixed the debugging features of the bloom passFixed the lighting from light surfaces with animated texturesImplemented full-screen blend effects (such as on item pickup) in the RTX rendererImproved support for old mods and enabled x86 builds of the dedicated serverImproved the behavior of Dynamic Resolution Scaling on map changesImproved the FPS counter behavior when r_maxfps is setImproved the tone mapperReplaced the rendering of laser beams as billboards with volumetric primitivesContributions by GitHub user @Paril:
Added settings for texture filtering in the UIAdded support for maps in QBSP formatMerged over 350 commits from Q2PROMoved the security camera definitions to per-map files for modding