tajemniktv / TajsGraph

Taj's Graphical Overhaul is a graphics enhancing mod for a game Satisfactory.
https://tajemniktv.github.io/TajsGraph/
3 stars 1 forks source link

Implement real time ray tracing #14

Open tajemniktv opened 1 month ago

tajemniktv commented 1 month ago

That's a really long shot, who knows if it's even possible

CTRQuko commented 1 month ago

ray tracing is something that must be integrated into the core of the game before compiling it. Lumen is the intermediate solution, in fact it is another type of ray tracing.

Text extracted from unreal documentation>

Global illumination simulates how light’s natural interaction with objects affects the color of other objects in the scene, taking into account the absorption and reflectiveness of the materials the objects are made of. It greatly increases the realism of scenes. With ray tracing, global illumination is computed for each frame, rather than being pre-baked, meaning that lighting can change over time, such as a light being turned on or off, or the sun rising, or someone opening a door. Unreal Engine’s Lumen is a fully dynamic global illumination and reflections system that uses multiple ray tracing methods.

the use of pure ray tracing excludes users who do not have an Nvidia card, however thanks to Lumen a unreal technology it is possible to use ray tracing for everyone.

DrShadow34 commented 1 month ago

I will also add, that Lumen do support hardware RT: r.lumen.hardwareraytracing=1 to enable it. Unreal doc specify, that it also should increase quality of Lumen. Tho, on my linux with 7900xtx and vulkan API I think it's just fallbacks to software render if I try to switch it in console while game running. Will experiment with it a bit, maybe it simply need dx mode.

CTRQuko commented 1 month ago

image

tajemniktv commented 1 month ago

In console you can't use "=", simply replace it with a space to change things in the runtime, but that most likely won't change anything without more under the hood changes

CTRQuko commented 1 month ago

I have corrected the console input, if it seems to do something when you activate it the game does a little pause and reloads the reflections. In terms of performance impact, in the test area I have it stays stable at 144fps and with hardware raytracing the gpu usage goes up to 99-100%. If I set it to zero it remains at 144fps but the gpu usage drops to between 90 and 98 which gives me to understand that if the gpu usage increases when activated it works but visually I can't find any difference.

DrShadow34 commented 1 month ago

I have corrected the console input, if it seems to do something when you activate it the game does a little pause and reloads the reflections. In terms of performance impact, in the test area I have it stays stable at 144fps and with hardware raytracing the gpu usage goes up to 99-100%. If I set it to zero it remains at 144fps but the gpu usage drops to between 90 and 98 which gives me to understand that if the gpu usage increases when activated it works but visually I can't find any difference.

Well, I got the idea about different visuals from this post, it may not be the case with Satisfactory and can be local settings in unreal demo. You can also play a bit with other settings that autocomplete shows to you, when you type r.lumen.hardwareraytracing, there a few that have been disabled (comes with 0 by default) and could potentially change Lumen quality. But honestly, whole idea behind Lumen was in software rendering, so I wouldn't count on better graphics there. Even in demo it decreases framerate without adding much to the scene.

FWF-w00kie commented 1 month ago

r.lumen.hardwareraytracing 1 does run smoother and looks cleaner (less dithered shadows) on a 4070 at least.