5 ms·
I watched some videos comparing ray traced and rasterised graphics and in real life the benefit seems negligible. On top of that rasterised graphics use all kin
by touchpadder 6y ago
I watched some videos comparing ray traced and rasterised graphics and in real life the benefit seems negligible.
On top of that rasterised graphics use all kinds of smart techniques to improve the performance. Ray tracing the whole scene is kind of brute forcing, brick and mortar method. It should be used selectively and not on each frame IMO
- mehmetoguzderin 6y agoAll kinds of smart techniques are emerging for ray tracing, too; you don't have to shoot the rays directly from the camera per se. Both rasterization and ray tracing will coexist to provide better graphics, and it was just that ray tracing didn't have the place it deserves on the chip.
- ihaveajob 6y agoFrom the fundamental point of view, the cost of raytracing grows proportional to the number of pixels rendered times log(scene size), whereas rasterization grows linearly with the scene size. So raytracing enables much more complex scenes at a fraction of the cost of rasterizing, which explains why it's being used more and more in real time rendering.
- ccmonnett 6y agoFor others interested in why ray tracing scales O(log N), this is covered in an earlier video in the NVIDIA "Ray Tracing Essentials" series, specifically this one: https://youtu.be/ynCxnR1i0QY?t=173 https://youtu.be/ynCxnR1i0QY?t=173 It's timestamped to the discussion of why this is true, but the whole video (like the series, IMO) is very informative, this one focused on "Rasterization vs Ray Tracing".
- sudosysgen 6y agoFor someone that doesn't want to watch, the essence of it is that space is world-space is divided in a tree-like structure, which makes traversing the scene as costly as traversing the tree, thus log(n) operations.
- CyberDildonics 6y agoThis is only true from a naive approach to visibility. With rasterization you can rasterize geometric values like normals and positions to an image buffer and shade only what is visible. Rasterization in old versions of renderman would do a lot of shading that was thrown away once scenes became more complex. Real time games eventually followed a similar pattern and now do 'deferred shading'. Rasterization can also be used to cull polygons that aren't visible when they are going to end up hidden by opaque objects. In theory ray tracing the first hit visibility can scale better, but in practice that part isn't a big deal and rasterization will probably win anyway. Not only that, but the idea that more polygons will make something look better is another trap. High quality lighting and high resolution textures become more important once polygonal geometry has enough polygons to not have faceting artifacts.
- dahart 6y agoYou make some good points, but culling doesn’t really work for complex on-screen geometry like foliage, hair, volumetics, crowds, etc, and games are pushing in those directions. Raster is currently cheaper for well tuned video game assets, that is true, but is not cheaper for film quality assets, and that’s where games want to go in the future. Filtering is a very important issue, and you’re right that more polys is not automatically better from a quality standpoint. Still, ray tracing can enable rendering of geometric complexity that is not possible with raster in real time, as long as you have a way to filter. Games aren’t yet really pushing on the boundaries of instancing, but they will down the road. The other appeal with ray tracing is being able to consolidate all the various tricks and algorithms into a single path tracing framework. Ray tracing architectures don’t need deferred shading (though they may choose a similar wavefront approach), and they don’t have a collection of difficult and separate ad-hoc methods for each effect they want (shadows, AO, reflections, indirect lighting, volumetrics, etc. etc.). Ray tracing gives you a unified framework where getting new lighting effects is easier to add, generally speaking.
- CyberDildonics 6y ago> but culling doesn’t really work for complex on-screen geometry like foliage, hair, volumetics, crowds, etc, and games are pushing in those directions. Just because something doesn't work in all situations doesn't mean it doesn't work in general. Games putting polygonal leaves and crowds full of furry creatures would be a waste, it isn't going to happen without level of detail. It is actually cheaper for film quality assets, but the camera visibility rays aren't where most of the time is spent. Still, things like REYES / renderman architecture decouples all the sampling required for motion blur and defocus so that the visibility samples don't have to be shaded. > The other appeal with ray tracing is being able to consolidate all the various tricks and algorithms into a single path tracing framework. My reply was about ray tracing not actually being faster than rasterization for first hit visibility in practice. I didn't say anything about ray tracing in general here.
- DavidVoid 6y agoThe problem is that although it scales better than rasterization, the computations involved in tracing are much more expensive (on current hardware at least). Another big drawback of ray tracing is that you can't use conventional occlusion and view frustum culling [1] with it. So significantly reducing the scene size, as you do in a rasterization renderer, is just not possible. If you have access to the GDC Vault I can recommend DICE's 2019 talk about reflections in Battlefield V. The slides are available for free [2]. [1] https://media.giphy.com/media/xUPGcgiYkD2EQ8jc5O/source.gif https://media.giphy.com/media/xUPGcgiYkD2EQ8jc5O/source.gif From the game Horizon Zero Dawn. Only geometry that might end up on the screen is actually sent through the rasterization pipeline. [2] https://gdcvault.com/play/1026282/It-Just-Works-Ray-Traced https://gdcvault.com/play/1026282/It-Just-Works-Ray-Traced Talk about culling starts on slide 56. Occlusion and Frustum culling aren't an option, so new techniques had to be developed.
- ollifi 6y agoIf we had enough power though we could do away with the performance hacks and just use one 'correct' way to draw the scene. This combined with accurate representations of materials would make building scenes easier and result in more coherent worlds.
- crote 6y agoThe problem with comparison videos is that most of them are focused on comparing games with RTX on/off. But this means that the game is developed with raytracing as an afterthought: it cannot depend on it for core features, because the majority of consumers don't have it yet. Imagine a shooter with, say, a subway entrance level. Initially the indoor part is lighted by overhead lamps. During a shootout, the defending team can destroy those to provide cover. while they can still see backlighted silhouettes of people walking in. The attackers might choose to park a semitruck at the entrance to provide some cover in shadow. Or imagine the end of an escalator. How do you look for people coming in? Obviously, looking directly into the shaft exposes you to anyone coming in, but perhaps you can use the slight reflectivity of the marble floor to look at it indirectly. Should you use the east of west side of a valley to go to a target? Well, that depends on the position of the sun, of course. You want to hide in the shadow. But what if a day only lasts 5 minutes on your world? Shadows are constantly changing, and so are the hiding places. Want to hide in a room? Turn off the lights to make the window into a one-way mirror. Be sure to turn off your laser pointer and flashlight, though! And have you seen the mirror scene in John Wick (https://www.youtube.com/watch?v=7-TZCEyok_o https://www.youtube.com/watch?v=7-TZCEyok_o) ? Try doing that with a rasterizer! So no, using it selectively isn't the way forward, if you ask me. We'll only see the full magic of it if we're able to use it fully in every scenario. We'll only figure out how to use it when we see how gamers interact with the effects of it. All the things I described above aren't something the developer explicitly programmed, they're just properties inherent to raytracing left for the player to discover. Only after a few years of that will developers be able to fully make use of the benefits it provides.
- tylermw 6y agoThe main benefit of raytracing is primarily for the CG artist pipeline/workflow. Complex, realistic lighting effects just drop out of the integrator, and changing scene lighting is much more akin to a lighting director on a movie set. Whereas with rasterization an 3D artist has to know the correct hack (i.e. "smart technique") to use in each situation--along with the failure modes for that hack.