Tuesday, August 19, 2014

There is no credible evidence showing that Halo 5: Guardians uses real-time ray-tracing for gameplay. It is pure speculation at this point.

Since Gamescom and I guess even as far back as E3 I have been digging in to the notion that ray-tracing would be used in games during gameplay rather than just cut-scenes.  I guess to get too deeply into this I have to explain to the best of my own knowledge what ray-tracing actually is.  Two weeks ago I really had little clue if I am being completely honest.  So let me explain what I understand ray-tracing to be.

Last week I wrote a post called "Halo 5: Guardians is said to be using ray-tracing. Can you identify what that is?"  That was me doing my best effort to understand what I was even looking at when it comes to ray-tracing.  The claim coming from MisterXmedia is that the Xbox One is powerful enough to facilitate real-time ray-tracing rather than what is traditionally used.  Traditionally there is a method call rasterization that gets used.  Ray-tracing, to put it simply, is the reflecting of light in animation.  The picture you see to the right shows an example of pre-rendered ray-tracing.  The technology is not something that is new.  It has actually been around for quite some time.  In gaming however it is brand new.  At least in the sense that it could be used for real-time gaming.  It still is not known to be possible in a practical application.  It is very intensive and takes up a lot of system resources according to just about anyone who is familiar with the use of it.

This next video is something all of you may have seen before.  It is the first example from nVidia of real-time ray-tracing being used in a gaming environment. This was incredible news because it showed that real-time ray-tracing was actually possible even though they made no secret that it was very demanding on system resources.

The main thing to point out with the video is that it is in a very controlled tech-demo environment.  Meaning they are not producing an entire game such as, oh lets use Halo 5: Guardians as an example.  The big claim form MisterXmedia is that there was no question.  The Halo 5: Guardians trailer was showing ray-tracing.  Was he right or was he wrong?  Let's talk about that.

The way to determine whether he was right or wrong is first to determine whether or not someone can even spot the difference between the two with the naked eye.  This next part is an example of the same scene being rendered using traditional rasterization versus ray-tracing.  Again, I want to remind you that this is a  very controlled environment and is not a real-time game or even a tech-demo.

I will let you decide from the image that you see here whether or not you could tell all by yourself.  I think the answer is pretty obvious, but you can decide on your own.

This image, which was posted in the comments on a prior article, shows that ray-tracing is the reflecting of light multiple times.  Simply put, the number of times the light is reflected the more realistic it is going to look.  There are about a million other variables to that, but to put it simple lets just say the more it is reflected--the better it looks.

This bit of information is pulled from a Reddit post a made trying to get more information on what ray-tracing is, and isn't, in an effort to best present what is going on.  I basically asked whether or not in the Halo 5: Guardians trailer we all saw whether or not it is even possible to spot the difference.  Here was the most poignant response in the article in which the person actually does say some games have used ray-tracing in the past, but for very specific parts and not in an exclusive way.
"There is so much cross-over between rendering techniques nowadays that actually, it's most certainly impossible to be 100% sure from just a video if something has been ray traced or 'rasterised' so to speak. Both Crisis 3 and Killzone 4 I believe, use ray tracing for certain reflections for example. But no, we are not yet at a point were your going to see full mainstream games rendered using just ray tracing. Graphics engines are getting so realistic now however, that it's getting harder to spot the difference between offline ray traced videos and real-time game play footage using pipeline techniques.

Limited scope, real-time, fully ray traced programs and simulations are quite possible now, even using just middle-range GPU's, especially when combined with GPGPU techniques such as NIVIDIA's CUDA, but are still not up to the required performance standard for modern games (the aliasing problem, being a big issue in particular). Generally, if your using ray tracing, you want your graphics to look ultra realistic, which generally means adding in a lot of costly features that rasterization techniques can't and don't do. That comes at a significant real-time performance cost.
Fully ray tracing games with 'outdated' graphics by todays standard, would actually be quite possible now due to modern hardware advancements, but there's little point in doing this."
What is was saying is that real-time ray-tracing is completely possible, but you will not get anywhere near the level of realism as you guys saw in the nVidia tech-demo.  You are going to have to sacrifice graphics if you want to see.  There is one other extremely important thing to note.  The games that did use real-time ray-tracing int he past were all being run on high-end PC's and not consoles.  That is a major point to make.  I do mean high-end for their time by the way.

There was a game, well more of a research projects, called Quake Wars: Ray Traced that was created prior to 2010 which was a tech-demo for having real-time ray-tracing.  It worked, but at a lower frame-rate than most people would ever enjoy.  I believe the articles said it was around 20 FPS.  That was using high-end PC's to render an almost 4 year old game.  It was rendering the Enemy Territory: Quake Wars game.  Basically what I am saying and what I have read is that real-time ray-tracing is possible currently on high-end PC's.  Much more powerful than even the Xbox One currently is.  Those games which use it are not graphically demanding games as you can see by the screenshot of Quake Wars: Ray Traced.

Is the Halo 5: Guardians trailer utilizing ray-tracing?  That is still the question.  We do know it is possible, albeit unlikely, that Halo 5: Guardians is using real-time ray-tracing as MisterXmedia claims.  Not impossible.  Just extremely unlikely given that we know for the most part what the Xbox One as it operates right now can and cannot do.  One of the things it most certainly cannot do is render photo-realistic quality games like Halo 5 using exclusively real-time ray-tracing.

Lastly I want to go back to talking about whether one can even spot ray-tracing in a trailer such as the one MisterXmedia used as evidence of its existence.  To support his point he suggested people watch the trailer and then even linked two different screenshots.  On of which is the one you see to the left right now.

His argument was that since there was obvious reflections on the armor there is no doubt that ray-tracing is being used.  The part he opted to ignore entirely is that this is most certainly and undeniably not real-time gameplay.  It is a standalone photo-mode of some sort showing off the armor for the blue master-chief.   So yes, this image may very well be showing ray-tracing in Halo 5: Guardians, but it is not actual gameplay.  Thus far his point has not been proven I would think it is perfectly safe to say.  That only leaves the video left.  There are parts of the video which show similar reflections, but it is obvious that they are, for the lack of a better word, 'dumbed' down compared to what you see in the image of the blue-armor.

Let's take a look at the video.  I will also add some of the points made from the aforementioned Reddit thread including some which were made by a user to claims to work with what he referred to as Pixar's RenderMan technology on a profession basis.  But first lets discuss the trailer itself.

The video, which is where the screenshot was pulled from, does show reflections similar to what was in the photo.  The big point to make is that none of the video was actual live-gameplay and was obvious a cinematic showing of the game itself.  Since MisterXmedia is referring to the parts where action is taking place and calling it gamesplay lets humor the guy and discuss those though.  There are a handful of different points and segments in the video where you see the reflections.  They are (thank you to the user Burito on Reddit for pulling all of this) at the following spots:
  • 0:06-0:16
  • 0:30-0:34 the best example
  • 1:16-1:17
  • 1:26-1:28
  • 2:04-2:06
Perhaps the best example of possible ray-tracing in the entire video takes place around 0:54 in which they are having a cinematic crawl of a structure where light is bouncing all over the place and you can see reflections on just about everything.  Even I am convinced that it more than likely ray-tracing from my limited understanding, but gameplay--it is not.

One of the few parts of the video that shows what appears to be actual gameplay is at the 1:33 mark.  It happens extremely quickly and it is just a fast moving camera across an arena which looks like actual gameplay.  Due to it moving so quickly it is mostly blurry, but even that when watched in real-time appears to be void of any ray-tracing.

Real-time ray-tracing is absolutely possible.  It is absolutely not possible when producing a game with the graphical showcase that Halo 5: Guardians is going to be though.  There is nothing in the video showing that the gameplay of Halo 5: Guardians will be utilizing ray-tracing.  MisterXmedia and his devoted followers such as MisterCteam and others claiming that they see ray-tracing cannot possibly make the distinction.  Saying they can is just seeing what they want to see and claiming it is fact.  According to that gentlemen I mentioned earlier who works in some capacity with Pixar's RenderMan technology it is incredibly difficult to spot just ray-tracing when you are watching a pre-rendered video such as the Halo 5: Guardians trailer.  He says:
"For arbitrary videos, no. I work professionally with Pixar's RenderMan. It's a hybrid renderer that can render using pure rasterization, pure ray tracing, or a mix of both. For example, a scene might be rendered using rasterization for primary visibility, deep shadow maps for direct lighting, point clouds for indirect diffuse and subsurface, and ray tracing for indirect specular. If you looked at it, you wouldn't be able to pick out any particular part and say whether it was rasterized or not since everything uses a bit of both.
Further complicating things is that a frame may have been split into layers, each rendered separately. For an aerial battle, for example, you might render the ground in one layer using ray tracing to get the benefits of instancing and reduced over shading, while using rasterization for the ships in foreground layer with microvoxels for the clouds and explosions. That'd be another case where some of each was used, though in this case it would vary by object."
Normally I would highlight the most important parts, but that guy made a great point all around.  Even in a trailer such as this it is unlikely that ray-tracing was used exclusively to achieve any of the lighting we've seen.  There are so many different methods to achieve great lighting with the engines being used that there is almost no way MisterXmedia or anyone else could reasonably look at that video and say with any degree of real credible certainty that what they saw was ray-tracing being used.

So, the bottom line is this:
  • It is highly unlikely real-time ray-tracing is being used in Halo 5: Guardians.
  • DX12 does not make ray-tracing happen as per MS.
  • Games which have real-time ray-tracing are older and not as graphically demanding as Halo.
  • Ray-tracing is not as easy to spot with the naked eye as MisterXmedia would like you to believe.  Especially in a pre-rendered cinematic video like we saw.
  • In any instance where MisterXmedia claimed there was ray-tracing it was never gameplay.  The on part where gameplay is shown it doesn't seem to show any reflections.
  • Real-time ray-tracing is possible, but even the Xbox One currently isn't capable of doing it at the level of Halo 5: Guardians as far as we know.


Post a Comment