Why UE4 isn't using Enlighten?

The thing about VXGI is that it is a strange beast altogether. The size of the scene doesn’t have a large performance impact, but rather the complexity of the voxelized mesh. A bunch of simple objects perform very, very fast, but one higher poly mesh can kill everything. Also, VXGI by itself isn’t stupidly demanding, but some of it’s settings can cripple machines inexplicably. And a lot of these settings are on by default. In short, VXGI can scale down to midrange cards, but it’s a headache getting it there, and having a large scene will make your job even harder. Also, the in-editor performance of VXGI is NOT a good representation of VXGI in the slightest. If you launch your project as a standalone, you will notice a huge performance improvement.

Note: I have tried VXGI with 2 cards. The first one was a 2GB 770, which, after some tinkering, I got 60 fps out of with specular and diffuse tracing at 1080p in a scene I was working on. The other was a 950m (laptop card). I got that to 30-40 fps at 720p, but it wasn’t exactly easy.

What settings are most likely to cripple performance?

You mention trying VXGI on a 770. I thought VXGI was only present on 900 series GPUs.

VXGI should work on most GPU’s these days, even AMD hardware.
The 900 series graphics cards have some features that VXGI can take advantage of that will improve performance.

In the top left corner you can see the FPS with and without SVOTI, it usually costs about 2-3 FPS or 4-6ms in those scenes, and I think the difference is well worth the cost, just look at the foliage!

It would be really great having something like this in UE4, for me this is a missing feature especially for outdoor scenes.

VXGI should work on most GPU’s these days, even AMD hardware.
The 900 series graphics cards have some features that VXGI can take advantage of that will improve performance.
[/QUOTE]

Ah, thanks.

In the top left corner you can see the FPS with and without SVOTI, it usually costs about 2-3 FPS or 4-6ms in those scenes, and I think the difference is well worth the cost, just look at the foliage!

It would be really great having something like this in UE4, for me this is a missing feature especially for outdoor scenes.
[/QUOTE]

It does look a lot better. Although I was under the impression that in the Crysis Engine, SVOTI works less like true dynamic GI and more like a really advanced form of ambient occlusion. In the video you link to, I see nothing dynamically casting light which bounces around, just the addition of shadows.

No, it does indirect light bouncing (and the number of bounces is actually configurable). Hope it’s OK to link to a CE documentation, otherwise @mods feel free to remove…: http://docs.cryengine.com/display/SDKDOC2/Voxel-Based+Global+Illumination The effect isn’t that extreme in these shots because of the prevailing earthen and greenish colors, but if you e.g. look at the comparison at around 1:55, you can see the hay towords the right change its hue and being lit in formerly unlit parts.

It’s also more limited than VXGI (VXGI is a complete solution, just slower) and like I said in the other thread, it’s likely that in that game they have lowered the settings since it’s mostly an outdoors game which doesn’t require as much precision–so voxels can be smaller, and you don’t need things like specular and you don’t have issues like light leaking, most of the lighting is going to be direct from the sun so the indirect lighting just adds a bit to the shadows which makes it look much nicer. For a case like interiors–like say an Archviz scene it would require higher settings and wouldn’t run as well.

Of course there is no silver bullet solution for GI right now. The question is where your trade-off is in terms of result vs performance. And

is just one point on the trade-off graph - namely “best results - bad performance”. I think SVOTI is more towards “good results - acceptable performance”, and at least I would prefer a solution like that in UE4.

For Epic, as far as what big lighting features they have with the engine, they want a solution that offers more versatility than that, because that would mean there’s a large number of games that wouldn’t run well enough on the settings that they would have to use.

You seem to be repeating that SVOTI is a slow and rigid solution. My impression is different though: It performs as good or better than any of the dynamic GI solutions that UE4 currently has, and is actually more versatile. But I’m not saying “UE4 needs SVOTI”, rather that the current status of dynamic GI in UE4 is unsatisfactory. There are several solutions which seem to be half-ready, and current work on GI is on hold.

The current dynamic GI system isn’t very good–SVOTI would work for certain cases, just like LPV would work for certain situations. I’m not sure they’d want to add it in if it’s really only an alternative to LPV. It seems like the games that people would use LPV for could be improved using SVOTI, but other games would be out of luck since the quality required would be too performance heavy.

Actually i don’t think LPV is much faster than SVOTI, throw a few trees in UE4 when using LPV and check your performance… SVOTI in cryengine gives you a much more better performance than LPV in UE4.
However LPV was also developed by Crytek and was used in games like FarCry or Crysis but it was dropped years ago by Crytek cause it is a very limited and outdated system.

And for kingdom come, once again, they didn’t reduce anything to make SVOTI performant… Just have a look at the few interviews they gave about using SVOTI in kingdom come. It makes no sense to claim
they are reducing the quality of SVOTI to make it run on normal machines or consoles. Fact is, SVOTI is fast and good enough to be used on PC and even consoles. The interior scenes in kingdom come are looking also amazing, don’t forget that you can enter all the buildings in kingdome come, so it is not only outdoor.

However SVOTI is Cryengine not UE4, i would be also more than happy to have a alternative afordable version of enlighten for UE4 even it is no fully dynamic. I guess since Battlefront 3 which also uses enlighten no one can say that they’re solution looks cheap or not good…

I never said LPV was faster or a better solution than SVOTI–the question is whether Epic would be interested in putting a feature like that in the engine if it’s only usable on specific gametypes.
They absolutely are reducing quality to get SVOTI working in Kingdom Come, they don’t need all that much detail, and since the interior lighting demos don’t run well enough for real-time games then that means they had to reduce the quality to get it to run in theirs.

Issue with Enlighten is besides the limitations, it’s that they don’t allow their source to be available which prevents it from being added to UE4, plus they would charge a high licensing cost.

I guess enough has been said on the subject of SVOTI, I’d just like to add one clarification: Technically, the new GI feature in the CE (which btw is still experimental and active WIP) is called SVOGI and only calculates a diffuse contribution (for specularity you still need environment probes). This is what has been used in Kingdom Come, and this is what the runtime costs of about 4ms are related to. SVOGI has several quality modes, the lowest one only voxelizing opacity and using a single light bounce, while the higher modes calculating multiple bounces and also voxelizing e.g. albedo and normals.

The underlying advanced (and even more experimental) system is called SVOTI (for total illumination) which also calculates a specular contribution. This was used in the Baron Haussmann demo you had a look at, and yes, it is heavier (although not as heavy as VXGI).

SVOGI is sparse voxel octree global illumination.
VXGI is (grid)voxel global illumination.
Difference is that SVOGI use less memory but tracing and updating the structure is more expensive. For similar quality VXGI should be faster and use bit more memory. With Nvidia hardware VXGI gains additional edge. SVOGI isn’t silver bullet. Grass isn’t greener on other side.

All the interior scenes created with SVOTI are ARCHVIZ scenes, they don’t reflect the performance of a in game interior scene.
I rebuilded a whole interior scene from a current game in cryengine by my self, it looks amazing and i’m getting between 80 and 90 FPS out of my GTX 780 Ti.
After i finished the scene i will post a video on artstation so you can have a look at the quality and performnace of SVOTI.

SVOTI or SVOGI however the name is, it is a little bit unclear, mainly they call it SVOTI in the forums not SVOGI, however this is not really important at least for me.
The grass is greener for me with SVOTI cause it is actually usuable on PC and consoles, and games are developed with it. Can you tell this about VXGI ? VXGI looks amazing
but it is not game production reday, even not a bit.

Enlighten would be absolutly OK even with no source code access, fact is you can have it for UE4 for a ridicolus expensive price. And about the limitations, i guess almost every one can live with them.
I mean please don’t take this personal, no offense… but your talking about all the direct lighting systems, like they are worthless, limitations here… limitations there… bad performnace here and there… but what is the alternative ?
You are talking like we have alreday the best dynamic GI solution in UE4 and no other direct lighting system can compare to it??? Fact is we have nothing working in UE4 when it comes to direct lighting or dynamic GI, so almost every working and good looking solution should be thankfully accepted instead of just counting down all the negative points…

Can anyone tell me whether LPVs (and/or VXGI) work on PlayStation 4?

From what I understand, they require DX11 and I’m not sure if the OpenGL “DirectX 11.2” of the PS4 counts. I think I read somewhere that LPVs work on PS4 but not on Xbox One, but Google isn’t giving me any confirmation on that.

Most people have graphics cards that aren’t nearly as powerful as the GTX 780Ti, and once you throw actual gameplay into the equation then the performance goes down even further.

No, there’s not a good dynamic GI system in UE4 yet–that would be something that works for the majority of games at a performance level that most people could play. I think that we have some solutions out there, but performance levels aren’t high enough and it’s simply going to be something that we have to wait until most PC’s have enough power to run it–so essentially, the solutions are developed, VXGI, SVOGI, SVOTI could all work, but we have to wait until the hardware catches up.

LPV should work on PS4 and Xbox One from what I understand

We have more than enough performance, PS3 and PS4 games are uising dynamic lighting since years. There is a mass of games using full dynamic lighting, maybe not every solution is fully dynamic when it comes to GI but even the enlighten or probe based solution is more than OK. Games like The Division, Far Cry Primal, Far Cry 4, Battlefront, Metal Gear Solid etc… couldn’t be realized without dynamic lighting. And ones again, you can play all this games on consoles which don’t have todays up to date fantastic hardware. You shouldn’t forget that almost every AAA game studio is using for years engines with fully dynmaic lighting, it is nothing new. No matter if we are talking
about UBISFOT and DUNIA, Snowdrop and AnVil Next engine, or EA’s Frostbite Engine which is using Enlighten. Dying light, developed by Techland and Chrome Engine, offers also a full dynmic lighting solution which works great on PC, and Consoles… i can go on forever like this… UE4 is sadly one of the last engines with no real fully dynmaic lighting soluiton…

We have no real fully dynamic lighting solutions in UE4 cause EPIC has simply other prioritys and i can fully understand them, developing a AAA Lighting system like SVOGI, SVOTI or VXGI is a hard task and costs a ton of money to develope.

@Efrye
From what i understand LPV can be used on consoles and PC but there are like no current games using it, cause it is an outdated system. I think the only game which uses LPV is fable legends…
SVOTI is usuable on PC, XBOX and PS4, VXGI is only “usuable” on PC not on consoles, at least in it’s current development stage.