6 ms·
For those out of the loop: Unreal Engine 5 is in early access, two of the most exciting new features are Nanite and Lumen Nanite is a system for efficiently re
by haxiomic 5y ago
For those out of the loop: Unreal Engine 5 is in early access, two of the most exciting new features are Nanite and Lumen
Nanite is a system for efficiently rendering masses of geometry (more so than using traditional methods)
Lumen is a technique to enable global illumination (rendering with multiple light bounces, traditional engines do 1 bounce + trickery) by first converting geometry to signed distance fields. Signed distance field techniques are very interesting, swapping triangles for analytic surface equations, they can be used to accelerate complex physics and lighting calculations. They've only recently started making their way into big commercial engines – starting with Media Molecule's Dreams game and now in UE5
Lumen deep dive: https://docs.unrealengine.com/5.0/en-US/RenderingFeatures/Lumen/TechOverview/ https://docs.unrealengine.com/5.0/en-US/RenderingFeatures/Lu...
Signed Distance Functions, Inigo Quilezles: https://iquilezles.org/www/articles/distfunctions/distfunctions.htm https://iquilezles.org/www/articles/distfunctions/distfuncti...
- djmips 5y agoSDF techniques have been used in one form or another for over a decade in big engines, but may not with such a front and center role.
- _kbh_ 5y agoThe PS4 game "Dreams" from 2015 is pretty much entirely signed distance fields and software based rendering. It a great example of what you can do with them. Here is a link to an admittedly very long and very large PDF detailing the methods they used. http://advances.realtimerendering.com/s2015/mmalex_siggraph2015_hires_final.pdf http://advances.realtimerendering.com/s2015/mmalex_siggraph2...
- jmiskovic 5y agoWhat do you mean by "software based rendering"? I was under impression that all of rendering is on GPU; first with point clouds being calculated in a compute shader, and after that the points being converted to 'splats' and rendered as quads. It is strange that Dreams didn't make a bigger splash. It is the first time an engine focused on making low-polygon assets look as aesthetically pleasing as possible. The ability to turn up the rendering roughness in some early sketches, and then tune it down once more details are added is incredible. I expected a small revolution with many competing engines reusing the tech, but nothing happened so far?
- _kbh_ 5y agosoftware based rendering doesn't use the fixed function hardware stages of the GPU. So it won't use the ROPs or other fixed function rasterisation hardware in the GPU, it instead does everything in software using GPGPU techniques.
- jmiskovic 5y agoI watched the talk you linked to, but I couldn't understand most of it. Currently reading through Real-time Rendering book to make sense of it. I thought once they create splats as quads, the rest of pipeline is standard? Each quad should be 2 triangles that get clip view coordinates, then pixel shader paints the brush texture, and then ROP assembles them on screen. Could you point out where I'm wrong? And in what way can a pixel end up on the screen without going through ROPs?
- _kbh_ 5y agoI'm not actually sure anymore after looking at more content. Based on the video here https://www.youtube.com/watch?v=1Gce4l5orts&t=1225s https://www.youtube.com/watch?v=1Gce4l5orts&t=1225s . It appears that they are even using the splat engine anymore (which I thought they where), and are using the older 'brick' based engine.
- paavohtl 5y agoIndeed. One of the earliest use cases I remember is Valve using them for decals, text and UI elements in Source Engine since 2007: https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007....
- rurounijones 5y agoOut of curiosity and If you are familiar: Is this the same Signed Distance Fields used in Star Citizen for their shield tech [1]? Or is it a different thing with the same name? [1] https://robertsspaceindustries.com/spectrum/community/SC/forum/50259/thread/signed-distance-field-update/ https://robertsspaceindustries.com/spectrum/community/SC/for...
- Jasper_ 5y agoCorrect. An SDF is basically an acceleration structure for an "omnidirectional" raycast. A "sphere-cast", if you will. If you are extra careful, you can also approximate a cone trace. Unreal Engine 4 has used it as a way of doing shadows for objects that don't animate for a long time [0]. But it's now a pretty standard staple of VFX and other sorts of industries to do a cheap approximate raycast on the GPU. Lumen simply uses the same data structure to accelerate bounce lighting cone tracing. [0] http://advances.realtimerendering.com/s2015/DynamicOcclusionWithSignedDistanceFields.pdf http://advances.realtimerendering.com/s2015/DynamicOcclusion...