Dark Souls 2 is an often overlooked entry in the Souls series, despite just how unique it was in experimenting with its mechanics and atmosphere back in 2014. In being sandwiched between the now iconic original Dark Souls, and developer FromSoftware’s later efforts like Bloodborne, it’s at times forgotten – thought of as an experiment, a tangent that wasn’t followed up on. Even so, the modding community around Dark Souls 2: Scholar of the First Sin is blossoming on PC right now, and among the most remarkable mod offerings for the game is the Dark Souls 2 Lighting Engine.
Essentially, Lighting Engine is a replacement of the game’s original engine, allowing major changes to its visuals, and offers a toolbox of sorts for others in the modding community to go much further. At its core, installing the Lighting Engine mod adds new anti-aliasing options like Nvidia’s DLSS and AMD’s FSR – replacing the FXAA post processing of the official release. We get lighting upgrades, volumetric fog, vastly improved shadows, ground truth ambient occlusion, and it even re-arranges foliage, trees and terrain with new meshes. This is just scratching the surface, with more features that are work in progress. It’s a simple one to install too: go to Nexus Mods, download, unpack, and replace the shader folder next to the Darksouls 2.exe with the new one – along with several other files – and you’re good to go. From here, the upgrades are transformative in spots like Forest of the Fallen Giants, and No Man’s Wharf.
All of which raises the question: is this the Dark Souls 2 remaster that we’ve needed all these years? Of course, Dark Souls 2 has technically already received a remaster of sorts with the Scholar of the First Sin update in 2015 – a year after its initial release on PS3, Xbox 360 and PC. The idea was to upgrade it from DX9 to DX11 with improved lighting, textures, enemy placement, bug fixes, while bundling in the first three DLC expansions. However, despite this suite of upgrades, Scholar of the First Sin still falls short by modern standards. Certainly, it doesn’t live up to the captivating early trailer of Dark Souls 2: the E3 2013 reveal where interplay between light and shadow was a major mechanic of play, where wind physics and volumetric effects played a bigger role. All of this was ultimately dialled back in the final release, and failed to make the grade in Scholar of the First Sin as well. Ten years on, then, it’s impressive to see at least some of that early promise realised by an advanced mod like Lighting Engine, as devised by a fan of the game.
So what does this mod do? In talking with the Dark Souls 2 Lighting Engine’s creator directly, much is achieved by reverse engineering the pipeline. In a similar way to RTX Remix, it’s able to detect the g-buffer, when lights are rendered, and even Dark Souls 2’s depth buffer is reverse engineered. Beyond that, other effects are achieved with hooks within the game code itself: meaning once a shader is loaded once by the engine, that triggers an immediate response from the Lighting Engine to engage.
The enhancements are many, but starting with a look at volumetrics, volumetric lighting can be added into the scene – layering on top of the simple, baked light shafts we already saw in the original Dark Souls 2. Here you get a proper volumetric fog effect filling the space, which in a pleasing way, does bring it a step closer to that 2013 Dark Souls 2 reveal trailer. This is achieved through a huge folder of shader files and, by reverse engineering the game’s depth buffer, a clean volumetric effect is created with no z-fighting or artefacts across the distance. Most interior areas show it off best, and it’s notably running with adjusted colour grading that adjusts by the map.
Moving to exterior areas, the shadow upgrades stand out most. These upgraded shadows take advantage of the (almost) fully deferred rendering approach in the Lighting Engine mod, which again, interprets the base game’s logic to implement higher quality soft shadows. Characters and objects in the environment – notably overhanging trees – now cast shadows from most light points, and even the sun, in a more realistic manner. In the Forest of Fallen Giants, the Lighting Engine mod has a huge impact. Shadows cast by the scenery are added in – which were missing in the original game. Better still, this mod even offers multiple quality settings, ramping up to the PCSS option – for Nvidia’s contact hardening soft shadows – which allows diffuse shade to appear the farther it gets from the light source. Proximity between the sun and occluding object is simulated in the end result, meaning player shadows will often, logically, look sharper nearer the ground. It’s not using ray tracing, but the final effect of adding new shadows to the map, plus switching the game to PCSS, is an incredible feat of engineering.
The environment is more richly shaded, and it makes it hard to go back to the original Dark Souls 2 areas, absent of shadow. To explain how this is achieved in the mod creator’s own words: once the g-buffer geometry draw is complete, the draw call data is cached for all players, enemies, and a few other important meshes within the scene. Using this cached data, the shadow map for all lights is rendered in a large texture atlas, just before the Lighting Engine begins to process the frame. From there, the clustered rendering compute shader will run through all local lights in a single dispatch, for lighting and shadows across the scene. The result: accurately simulated shadows, dynamically moving in response to every object within the environment, rather than only select objects.
Sticking with the shadow upgrades, let’s check out a few interior spots. Secondary lights, like torchlights in connecting dungeons, now cause the character to cast a proper shadow. In fairness, we already had shadows cast from bonfires and the sun in the original Dark Souls 2, but their application was limited elsewhere. Lamps simply cast no shade as you walk by, which is a limit that’s even true of Elden Ring today. The Lighting Engine mod fixes that, and using PCSS we get these sharp shadow outlines on nearby surfaces, from torchlight. Additionally, the Lighting Engine allows specular highlights to bounce back from these torches, with a more detailed reaction across the nearby stone.
We also benefit from a high quality ambient occlusion – the ground truth ambient occlusion also seen in engines like Unity. Fundamentally, this is a more accurate variant of AO that limits the so-called halo artefacts around a player as they pass a shaded corner, or grass – a problem with the vanilla Dark Souls 2’s built-in ambient occlusion. GTAO darkens the game’s environments quite visibly. Especially in No Man’s Wharf, the need for a torch, or a pharos lockstone to light the route ahead is more crucial than ever before – which again, is a point that plays a little closer to that original E3 concept trailer.
Please enable JavaScript to use our comparison tools.
All of this is presented at 4K resolution in the video above, and I’m using the newly-added Nvidia DLSS setting (DLAA actually, running at native resolution for extra clarity) – which, clearly, tidies up rough geometric edges more effectively than the base game’s FXAA. Beyond that, there are many tweaks to the world detail – many you’ll have spotted already. Firstly, there’s the new foliage and object placement, notably across the Forest of Fallen Giants. It’s worth stressing that collision data is not changed, so gameplay is unaffected; the boundaries of play are intact from Scholar of the First Sin. However, new elements like grass and trees – in inaccessible areas – now embellish areas like the Majula hub, and of course, these elements now also cast shadows.
With a few exceptions, like a new mountain asset, I’m told that these assets are also sourced directly from the original game with no modification. They are now batched, and rendered in single draw calls to reduce CPU load, too, via the Lighting Engine mod. As for the hard geometry of Dark Souls 2, we have adaptive tessellation in place. This increases and decreases polygon density based on distance, while in general, world LODs are pushed out, allowing us to see more distant terrain across the horizon. It’s again very impressive stuff, and I’m also told that skybox and cloud systems are currently work in progress too.
The good news is, the Lighting Engine mod runs with relative ease on modern systems. The RTX 4080 in my test PC took this on at 4K resolution, with PCSS shadows, and I was still hitting around 100fps in every area – using an unlocked mod here to break past 60fps. Oddly, I couldn’t get the game to go higher than 100 – which appears to be an issue with the original game connected to some output devices. Still, it proves the point that these changes are not so taxing that a locked 60 is impossible if that’s the goal.
Please enable JavaScript to use our comparison tools.
On a more general level, also impressive is the Lighting Engine’s debugging features, which are accessible by pressing the F1 key. A window appears at the top right letting you see all of the parameters for the lighting, fog, GTAO, and colour grading. The debug viewing modes even let you see ambient occlusion, and normals, rendered in isolation in this handy split-view. It truly raises the curtain on how each buffer combines to create the final frame we recognise. Meanwhile, press the F3 key and even more options open up on the left; this time letting us get a full view of the game’s frustum culling system; how geometry and enemies render in and out based on the camera’s viewpoint.
The creative opportunities truly open up from here. Texture packs are easily swapped in by dropping them into the game’s install folder. Plus, using the Lighting Engine mod’s creator tool, it’s possible to paint new objects into Dark Souls 2’s world, assuming you’ve the time to adjust the collision meshes that go with it. Really, it underlines what a flexible tool it is, if you’ve the creative impulse and time to see an idea through. On its default setting though, the Lighting Engine mod makes adjustments with some faith to the original game layout – and I think there’s value in this. It does of course allow for an easy swapping in of new texture libraries from the Nexudmods vaults – but at its core this mod does enough on its own to transform Dark Souls 2.
It doesn’t end here. Looking to the future, the creator of Lighting Engine is also busy at work on a similar upgrade for Dark Souls 3, with GTAO, screen space reflections, volumetric fog, plus Nvidia’s DLSS and AMD’s FSR options planned for the third game. In asking about ray tracing support for either Dark Souls 2 or 3, it seems an RT implementation for these effects is an uphill battle. A BVH structure would need to be constructed for each environment – a time consuming endeavour to cover every environment in the game that’d demand a larger team. Plus there’s also a requirement to upgrade the engine to DX12, where Dark Souls 2 runs on DX11 right now. Still what’s in the Lighting Engine already deserves huge credit – and the manner in which it reverse engineers a 2015 PC release makes you wonder what more is possible.
I’m only scratching the surface of what this mod’s doing, and to what extent it opens creative options up to other Dark Souls enthusiasts. There’s a lot more detailed information, direct from the source if you’d like to follow ds2LightingMod over on X/Twitter. The comparisons really do speak for themselves. If for nothing else, it gives us a chance to re-experience Dark Souls 2 in quite literally in a new light – and given that there’s no whisper of an official remaster effort on the game, it’s well worth checking out.