📈 GH Trending Explorer 🎲 Surprise me

← all repos

ThreatInteractive / Prototype-SWRT-Hard-Shadows-For-UE5.7

git clone https://github.com/ThreatInteractive/Prototype-SWRT-Hard-Shadows-For-UE5.7.git

This is a prototype plugin for UE5.7 that integrates SWRT hard shadows in UE5.7 without DXR

+0
stars, 24h · #34,646
+~0
stars, 7 days · #35,121
+85
stars, 30 days · #6,234
86
★ total
7
forks · 0 open issues

Star history (as recorded here)

2026-10-20 · 85 ★ 2026-10-23 · 86 ★
LanguageC++
LicenseApache-2.0
Created2026-10-05 (18d ago)
Last push7d ago
Watchers3
OwnerUser

Links

README excerpt
# Prototype SWRT Shadows
A spot light for Unreal Engine 5.7 whose shadows are ray traced in a plain compute shader, with no hardware ray tracing requirement. One hard shadow ray per lit pixel, traced against a two level BVH built from the light's own shadow casters. No shadow map, no screen space trace, nothing carried over from the previous frame. The lighting is the engine's own: the shader includes `DeferredLightingCommon.ush` and calls `GetDynamicLighting`, so only the shadow term differs from an engine spot light.
# Why This Has Been Uploaded & How You Can Help!
It was a considerable amount of work to get the tracer on-par with the hardware DXR path (GA106-300-A1) and since there wasn't any starting material for compute-shader-only raytracing in which modern optimizations/research were compiled into a single repository: it made sense to go ahead and release this project after it hit a quality wall. The problem with hardware-accelerated ray tracing is that its fixed-function architecture is permanently constrained by the research available when the silicon was designed. The graphics programming scene is a constantly evolving space where computational shortcuts and optimizations are constantly being discovered. The vendor agnostic compute-path can implement such optimizations which are not typically compared by leading hardware RT vendors which can sway two imporant scenarios: 
- A consumer's hardware/brand purchase decision when looking at what is actually needed to support current console generation performance-visual standards
- A studio's game development decision on what graphical approach they should spend resources on adopting
 **Here are the topics that need community outsourcing/R&D**
- Alpha-testing/masked material support with vertex animation support (important for dynamic hair & foliage assets)
- CPU optimizations
- Soft Shadows (currently relies on MLAA for edge smoothing; temporal denoising & major cost in association are not welcome)
- Better BVH construction with CPU skinning support (it's currently messy since it's working around precompiled UE5 limitations) 
- Vendor/low-Level API optimizations (maybe wave intrinsics, either way support in Vulkan is must)
- 1-frame only ray acceleration research since Threat Interactive's unannounced title deals with frequent camera cuts/fast movement.
- Efficient material branching support for approximated transmission, see page 264 of this presentation. 
# License
Apache 2.0 (see LICENSE, and NOTICE, which has to ship with any copy)
# How To Use
- Enable skin cache in project settings
- Copy this folder to YourProject/Plugins/
- Rebuild the project, since the light is a new actor class
- Place an **SWRT Spot Light** from the Place Actors panel
- It derives from `USpotLightComponent`, so attenuation radius, cone angles, and the transform are the engine's own properties and paste across from an engine spot light for a side by side comparison (there might be a bug with the light intensity val