If you mean about range, like the prev question, I have no idea. For now AHR vs VXGI is mostly a performance vs quality decision. Vxgi tends to look better, but ahr runs faster. When I upload the reflections thing I talked about I’ll close some of the gap. Also need to do some improvement to the voxelization stage, need to batch geometry together. Overall, the quality difference is no extremely big, but the performance difference can be quite big. As a disclaimer, I haven’t tried new versions of VXGI, but from what I see in the game works thread, performance for people with less than a 980 Ti or similar is a problem.
EDIT: I would say that VXGI is a tad more polished that AHR in the current state, but working hard on improving it
Hi, I’ve just discovered thread, amazing work here! I’m quite interested to try it on personal scene, if that’s okay ?
I have a question, sorry if you already said it I didn’t go through all the posts, but what about transparent shader and refraction ?
With VXGI version of Unreal I believe translucent shader are not taken in account …
Sure! You can use it in any project you want, commercial or not, as long as you use UE4, and follow Epic’s EULA, of course
Same with AHR. While it’s not extremely difficult to have transparent materials, it’s not something I’m working on at the moment.
Thought you might want to take a look at what Crytek is doing, which sounds similar! Though they mention “cones” so I don’t know if they’re cone tracing or raytracing then blurring. Regardless Voxel-Based Global Illumination - CRYENGINE 3 Manual - Documentation
It looks fantastic

Regardless, they had the same idea I did and got it working, RE
Not sure why it didn’t work for you, I kept thinking I messed it up somehow and the idea was stupid, but apparently Crytek got it working too. I’ll try to dig up the demo I played around with, it has source code and etc. Regardless, keep up the good work!
Yeah, I have looked into it, even tried a demo a while back. Interesting stuff, but haven’t seen it being used for dynamic objects.
BTW, I think they mean that the constant ambient is not on the voxels, but on the final image, same as the ambient term I add
The thing about crytek’s SVOGI implementation as you see above is that its actually usable in game scenarios.
While testing VXGI on a default map with multibounce rendered my 970 useless.
atleast we have DFAO i guess
[QUOTE=Bladerskb;411464]Miscreated: SVOGI Before and After Comparison Images - YouTube
The thing about crytek’s SVOGI implementation as you see above is that its actually usable in game scenarios.
While testing VXGI on a default map with multibounce rendered my 970 useless.
atleast we have DFAO i guess
[/QUOTE]
And AHR!
(Well, maybe in a few months) On my 970 I get about 70 - 80 on a simple test scene, about 60 on the Sun Temple, and like 40 on the Reflection scenes. Have a bunch of optimizations in mind too.
Yeah, performance is good with that, but to be honest, I tried a demo a while back, and wasn’t that fast. It looked good (except for a few odd things with shadows), but wasn’t the really great performance they say. Maybe was the preset, who knows. Still an job by Crytek (like always).
Funny to see they are using the thing I talked last year for the low preset, using RSM to get the albedo instead of the voxel grid( I talked and tried that close to the start of the thread. Scratched it cause you couldnt have emissive). to see I thought about something that the guys at Crytek thought about later ![]()
Have you tested AHR on the Sponza map?
Nop, need to convert Sponza to UE4. Haven’t really got to it.
Will upload the copy i have later today.
use these settings. It runs on 18-20 FPS on my laptop with “Very High Spec” mode. The level is the “woodland” level if you want to test it for yourself.

Good work . Keep it up!
I have not read all posts but could EPIC take over code and merge if it works with all GPU vendors? Could solution be future for UE4? thoughts?
I use currently AMD R9 270 and in future R9 380
It does work with all vendors, even tried with intel graphics, and while slow as hell, it worked.
My plan is to ask Epic sometime around the end of the year for integration, after that is up to them to decide. Haven’t asked them yet though, want to have it more polished.
EDIT: Just tried a test scene I have, getting about 15 fps at 1280x720 on my i7 iGPU (HD 4600). Same scene at 1080p runs at about 80 - 85 fps on my 970. Could’ve been worst actually.
First of all fantastic work! I would also like to tap into UE’s source internals for implementing some kind of GI algorithm, is it possible to synchronize your git repo (rebase it or merge it), with the main unreal repo,
so i can study (diff) the changes that you’ve made in the places that you’ve done them? Because there is no formal documentation on the UE code architecture, i get your GI implementation to be the best and fastest way to get
into hacking things. If is too much work for you, could you advice on how do you started modifying the source? Where do you read how the unreal engine pipeline worked? Do you reverse engineered the whole UE by yourself?
Thanks in advance ![]()
Thanks and keep optimizing.
Ok, I will follow your advancement, thanks again to share your work ![]()
I mostly reverse engineered the engine by myself, had some help of the documentation and a few guys on the forums at the start, but been finding my way around the code for a while now.
Not sure what you mean with sync with the main repo. If you want to see the changes I made, I flag them (or at least try to D: ) with the line “// @” , and most of the files I added are named AHRxxxxxx
If you have questions feel free to ask
If you check your project, you can see that it says that your release branch is around 500 commits behind Unreal Engine’s release branch and 180 commits ahead of that. That means that in the past when you started working on the first clean clone of the UE repo you took, you started working in a different timeline, because the main UE also kept updating with changes. If you merge them with your repo, we will have a repo that has the latest commit in the UE repo with YOUR additional code, making it fantastically easy for someone to see the additional things you have added. That will also offer easy merges of your version with someone that has just forked a vanillia version of UE repository. I see in your commit history that you’ve made some kind of merges in the past, so i’m not sure why i was unclear. If you believe that too much trouble for you, you could also make some kind of release patches, that can be used to offer your renderer in the latest git version of the official Unreal Engine. Please tell me if you want help! Again, really thanks for all your help
!!!
Oh yeah, that. I try to merge the changes by epic as they release them, but the last changes they uploaded to the release branch caused me problems compiling, and aren’t even final. I’m waiting till they release 4.10 before merging. AHR is currently 4.9.2