Hi everyone. So, some very interesting news dribbling out of Microsoft in the last couple
of days. It would appear that Microsoft are going to attempt to actually get ray tracing
working on the Xbox One. Now this is a really interesting kind of piece of lineage really from the
gaming and computer world that we kind of have two ways that we can do graphics on computers.
We have the traditional way that we all know and love, and that basically means kind of
pre baking our lighting into the game world so that everything has already been calculated
in advance, you know, where light and shadows will fall etcetera. The other way is known
as ray tracing. Now what this does is instead of calculating the light in advance, we calculate
the light literally in real time. So every ray of light that is being cast into a world
can interact with objects in real time including bouncing that light into any other surface
and then in turn, that light bounching around again just like in the real world. Now,
ray tracing will give you, frankly, some of the most beautiful looking graphics you will
ever see. There simply is no other comparison. And a lot of the time when you see movies,
you know, animated movies like Pixar and so on, ray tracing is being used as part of that
effect to make the light feel natural. Now, where we come into gaming is ray tracing is
an incredibly intensive process to do on any computer system. It doesn't matter whether
you've got the most beefy machine in the world, you know, you will still find that trying
to do real time ray tracing is incredibly intensive. So, when Microsoft say they've
got a test lab up and running where they've actually got ray tracing working and they're
now trying to expand that work to see whether they can bring it to the Xbox One really as
a development pipeline I suppose you have to get a little bit excited. And you also
have to wonder how exactly they've achieved it because even with, you know, using a dual
NVIDIA graphics card with a ridiculous amount of ram, incredibly fast processors etcetera,
you are still only talking 15-20 frames a second at the best I've seen and this is from
military quality simulators. You're still not going to get a perfect 30 frames a second
and we're a long way from seeing 60 frames a second at the moment using equipment we
currently have available. Now that's not to say someone hasn't gone along and built some
custom hardware to do ray tracing you know, at 30 frames a second or near enough, they
certainly have, but we are a long way from having that within consumer equipment. Certainly
this is not something you can particularly do easily on your home computer system. So,
when Microsoft say that they are trying and appear to have a good result from doing this
on the Xbox One you have to wonder how are they doing it? Now, my belief is they're using
the cloud and what they're going to do is effectively hand off the ray casting elements where we
have to measure each beam of light bouncing off an object, bouncing off another object
the shadow being cast, etcetera, and move that computation off to the cloud. In theory, it could
be done and because that element of calculation's on the CPU or GPU is incredibly intensive
and you have to do it kind of in parallel so you'd need a graphics card with plenty
of cores on there or streams effectively so that what you can do is you can hand off each
cast to one of these particular streams, have it processed through then start the next one.
And that allows you basically to have multiple light sources all being trapped and cast in
one go. Now, if you were to hand those calculations off to the cloud and have them streamed back
to you in real time, you wouldn't have any real impact on CPU or GPU, those two elements
can carry on doing the majority of the thing they need to be doing, pushing pixels round
the screen. There is obviously going to be a bit of an overhead from the point of view
of taking that data in incorporating it into the scene and so on but that is going to be
marginal and I wouldn't see it being any more difficult than having to then work with pre-baked
lighting. within a scene as well. Effectively it's the same thing. You're getting pre-baked
lighting data from the ray cast sent down to the client in near real time. Obviously
real time when you're dealing with anything that's internet connected or anything with
a length of cable, you are adding lag, latency. It might be so small we as humans can't see it which
your computer system even one milli-second is an age. And so timing this information
coming from the cloud down to the Xbox One and processing it, that is going to be the tricky
bit I think, and that's going to require either some kind of forward thinking computation
to know that the next sets of rays that are going to be cast will be going here, here,
and here effectively like a prediction code, or they're going to have to make sure that
the data is coming down so fast that this simply isn't a problem with the lag kind of
being there. My bet is it's going to be something more on the prediction side of things because
you simply cannot guarantee perfect internet connectivity constantly over say a one minute
period, there is always going to be some fluctuations and, you know, network congestion. So it's
going to be very interesting to see where Microsoft kind of takes this technology. We
have seen games use ray tracing before. One of the last ones was Quake Wars I think it
was and quite a few years ago now where a ray traced version of the game engine was
released and I had it up and running and yes, it worked, but the frame rate was atrocious
and as you might expect, it's still a very very difficult thing to do. So really from
Microsoft's perspective, this could be their big fight back, quite honestly, because if they're able
to get ray tracing working, if they're able to make that available to developers we are
going to see the quality of graphics within games leap frankly. It is going to be like
night and day, like looking at you know, games pre graphics accelerators like Open GL, Direct
3D from a time before that to actually having Direct 3D Open GL accelerated graphics. It's
going to quite literally change the industry if Microsoft can get this working. Now Microsoft
is not beyond, I'm afraid, talking about something that is effectively in their research labs
and it never really making it out to general consumers in a way that we would recognise.
So it will be interesting top see if Microsoft is able to actually bring this technology
to market in a way that actually works for consumers and games developers. It's certainly
very very very interesting that Microsoft is now starting a public fight back really
to talk about the technologies talk about the things it's working on and really I suppose
to kind of try and slow down the march of Sony right now and say hey! you know, we
might appear to be technically behind but actually we're forward thinking. And so, you
know, things are looking up for Microsoft in many respects. They might be behind on
console sales but just maybe they're thinking far enough ahead to position the Xbox One
not just as a console for this year and next but thinking where they're going to push the
industry to over this next six-year cycle. Potentially they may have something Sony can't
do here, or alternatively maybe Sony is already well on its way to having ray tracing working as well.
Let me know what you think in the comments. Does this really shift your opinion of what
Microsoft have been up to with the Xbox One? Do these forward looking kind of statements
from them give you some encouragement that Microsoft might be still in the game, even
if they aren't selling quite as many consoles as Sony?