Rendering The Future (layman's version... by a layman...) (Destiny)
I'm not a graphics guy, and really not a 3D game engine graphics guy, but I love reading through the Halo and Destiny tech slides. Here what I, again the non-graphics guy, got from this set:
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
2. A lot of the work they talked about was getting the graphics system to do fewer passes on a scene and do more with those passes. By doing fewer passes it means that your console's CPU and GPU doesn't need to go back over a frame as many times to finish it up, leaving them free to beef up the fidelity and effects of a given frame or get started on the next frame sooner.
One big step forward from Reach seems to have been improving the materials system and rendering system to reduce the number of costly or hard to work with special cases. In Destiny they place a light and the entire scene from basic level geometry to characters, to transparent objects all get lit and shadowed correctly. In Reach they had several different light types, and terrain types and so on that all reacted differently (or not at all meaning some combinations didn't work with each other, period) depending on what they were doing. By improving things on one end it lets the artist more easily create what they want without worrying if the objects is going to reflect or shadow or interact with fog or sparks properly, etc.
3. Particles were a big improvement that Reach showed over Halo 3. Through various techniques Bungie got a huge increase in the number of particles they could use at once. This showed up as more sparks, and explody bits, and my favorite, as the raindrops that could be frozen in midair in theater mode since each nearby drop actually existed. The Destiny engine seems to take another similar sized step forward and uses some fancy tricks (like determining if a small particle is too far away to really be seen and taking it out of the equation early on so the game can use available processing power on things you actually will see) to further increase the number of particles they can have on screen at any given time. Particles are used for things like sparks and smoke, so look for a nice increase in those areas for Destiny!
Overall it sounds like by improving the engine in fundamental, low level ways, Destiny will get away with looking a lot better even with no increases in processing power. And perhaps even a lot super better when running on the next gen consoles.
My one, hopefully not too layman-ish, question would be this: A lot of the new lighting system was made to fit in the 360's small EDRAM but it sorta sounded like maybe the systems were still confined to that small amount of space even on the next-gen consoles. Is this true, or can the graphics systems spread their wings on the next-gen consles? You know... generally speaking... :p
Now excuse me while I duck in terror of the actual graphics guys coming and telling me how I've misinterpreted everything. :)
Rendering The Future (layman's version... by a layman...)
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
At the very least, it sounds like they'll be wanting their "static" lights to have some degree of animation available.
If you're expecting scenes to have lots of shadow-casting dynamic lights on PS360, I wouldn't get my hopes up; it's possible, but this is a pretty ambitious game to begin with, and I won't be surprised if they just parallel-project a single shadow from a "dominant light source."
One big step forward from Reach seems to have been improving the materials system and rendering system to reduce the number of costly or hard to work with special cases. In Destiny they place a light and the entire scene from basic level geometry to characters, to transparent objects all get lit and shadowed correctly. In Reach they had several different light types, and terrain types and so on that all reacted differently (or not at all meaning some combinations didn't work with each other, period) depending on what they were doing. By improving things on one end it lets the artist more easily create what they want without worrying if the objects is going to reflect or shadow or interact with fog or sparks properly, etc.
Graphics engines have generally been moving in this direction. "Physically based rendering" is part of that phenomenon.
If you use a unified model that is largely an approximation to realistic light phenomena, an artist can define a material according to real-world understanding of how materials work, and it will look as expected when placed in any environment. More getting things right the first time, less digging through a weird list of special cases and funky magic options that don't line up with common sense.
3. Particles were a big improvement that Reach showed over Halo 3. Through various techniques Bungie got a huge increase in the number of particles they could use at once. This showed up as more sparks, and explody bits, and my favorite, as the raindrops that could be frozen in midair in theater mode since each nearby drop actually existed.
The main thing Reach did was pull particle physics off the CPU and run it on the GPU.
From what I understand, in Halo 3, the CPU calculates the particle trajectories, and it detects when particles collide with polygons in the game world.
In Reach, particle collision is a screen-space phenomenon.
When modern 3D games are rendered, they wind up generating depth and normal buffers which describe the "shape" of the scene as seen by the player. So if a scene involving a sphere looks like this, you might have a depth buffer that looks something like this; the brightness corresponds to the depth from the camera.
(Sorry for the polygon edges in the second image, "working correctly" was not yet a feature of my rasterizer when I stored that image.)
In Reach, the GPU handles particle movement, and detects particle collision using stuff like the depth buffer. It's a GPU-friendly and highly parallelized procedure, which can run blazing fast on the 360's GPU even with a pretty large particle count.
One consequence is that it probably doesn't handle offscreen particles particularly correctly... but then, that obviously might not be a big deal.
The stuff involving particles in this presentation is mostly about particle rendering, though.
The Destiny engine seems to take another similar sized step forward and uses some fancy tricks (like determining if a small particle is too far away to really be seen and taking it out of the equation early on so the game can use available processing power on things you actually will see) to further increase the number of particles they can have on screen at any given time.
Haha, practically ever modern game seems to do that sort of thing. Though I'm not sure where the presentation talks about dropping particles based on distance.
The section about transparent effects mostly talks about how transparencies are shaded, and (perhaps more awesomely) how they've implemented low-resolution transparency blending. That triple-image comparison at the end, with "high resolution render" compared with "1/4 res with bilinear upsample" compared with "1/4 res with VDM" is AWESOME.
Most games that use low-resolution alpha blending have artifacts like in the "bilinear upsample" image; in particular extreme cases, like transparencies in Gran Turismo 5, this can make a 1280x1080 game look like it's running at 240p.
That VDM stuff is cool (and I'm sure the PS3 version will look better for it, given that that console generally has shit for render output performance).
My one, hopefully not too layman-ish, question would be this: A lot of the new lighting system was made to fit in the 360's small EDRAM but it sorta sounded like maybe the systems were still confined to that small amount of space even on the next-gen consoles. Is this true, or can the graphics systems spread their wings on the next-gen consles? You know... generally speaking... :p
Depends what you mean by "confined." They chose a 96 bit-per-pixel format to be able to fit decently high-resolution (almost 720p) buffers into the 360's 10MB eDRAM.
The next-gen consoles will use the same 96bpp format, but they don't have the same buffer size restriction; the XB1 has a fast 32MB pool of eSRAM and a slower 8GB pool of DDR3 DRAM to render to, while the PS4 always renders out to an 8GB pool of GDDR5 DRAM. So if you were concerned that the PS4 version was going to push 1152x720 because that's a reasonable choice for the 360, that's probably not going to happen.
Furthermore, this engine is likely very configurable, and I certainly expect the PS4/XB1 to be cranked up in some respects beyond just resolution (and texture quality blah blah blah). Maybe the antialiasing is better, maybe transparencies are bucketed to higher quality, maybe more light sources cast shadows, maybe there are more light sources, maybe texture filtering is better.
Although they could certainly have used a larger buffer format and a more complex material model on PS4/XB1, using a buffer format like this doesn't necessarily mean that they aren't taking decent advantage of the offerings of the eighth-gen consoles.
Rendering The Future (layman's version... by a layman...)
Haha, practically ever modern game seems to do that sort of thing. Though I'm not sure where the presentation talks about dropping particles based on distance.
I was referring to this portion:
We first compute a 1/4x1/4 resolution conservative depth buffer (each pixel records the farthest depth from the camera for the corresponding 4x4 block of original pixels). We can use this as our depth buffer for Z-culling (and more importantly, early-Z culling).
Rendering The Future (layman's version... by a layman...)
I was referring to this portion:
We first compute a 1/4x1/4 resolution conservative depth buffer (each pixel records the farthest depth from the camera for the corresponding 4x4 block of original pixels). We can use this as our depth buffer for Z-culling (and more importantly, early-Z culling).
Early Z culling refers to throwing stuff out prior to shading it on the basis that it's behind some other object and therefore not visible.
Notice that the low-resolution depth buffer records "the farthest depth from the camera for the corresponding 4x4 block". If you're about to calculate some per-pixel shading for something that lies within that block, but which is farther away than the value in the low-resolution depth buffer, it follows that the thing you're about to shade lies behind everything in the 4x4 block. So it's not visible, so you decide to not do the shading you were about to do.
Basically, early Z culling is a means of increasing efficiency without changing the way the scene looks (it works by throwing out tasks that wouldn't have contributed to the image anyway). It's quite different from simply not bothering to render small objects at a distance.
Rendering The Future (layman's version... by a layman...)
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
Do you think that's smart? I would be mega surprised if the 360 received all the content over the course of Destiny's 10 year plan. When it comes time to move on, will you be able to port over your characters? Will you have to re-buy content on the new system? Will a PC version come along and just be plain best in every way?
I kind of wish Bungie would be more upfront about this, but it seems to me the smart thing is just to go next-gen right from the start.
Rendering The Future (layman's version... by a layman...)
Do you think that's smart? I would be mega surprised if the 360 received all the content over the course of Destiny's 10 year plan. When it comes time to move on, will you be able to port over your characters? Will you have to re-buy content on the new system? Will a PC version come along and just be plain best in every way?
I kind of wish Bungie would be more upfront about this, but it seems to me the smart thing is just to go next-gen right from the start.
I'm not too worried about it. They designed a new graphics engine specifically for Destiny that was designed to scale to any system. I think worst case scenario the first games on next-gen may not look quite as good as the later ones, but I imagine that will be the case anyway as they get better and better at developing for next-gen. As far as the rebuying content, I don't think that'll be an issue. With the code system they implemented they appear to be building a system where they keep track of content on their site, so I think our content will be kept in Bungie's "cloud", barring an exclusivity deals they have.
Rendering The Future (layman's version... by a layman...)
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
Do you think that's smart? I would be mega surprised if the 360 received all the content over the course of Destiny's 10 year plan. When it comes time to move on, will you be able to port over your characters? Will you have to re-buy content on the new system? Will a PC version come along and just be plain best in every way?I kind of wish Bungie would be more upfront about this, but it seems to me the smart thing is just to go next-gen right from the start.
On the technical side it felt like they were trying to make sure the 360 and PS3 could handle whatever they threw at it. I think the real problem is going to be the Microsoft / Sony divide. If I buy DLC for my 360 will I also somehow get a free download of it for my PS3? What about even between the 360 and One and PS3 and PS4?
I expect some of these questions will be answered before Destiny ships, but others, like where the game will progress long term, won't.
And, for you:
Destiny does run on PC, just internally. :)
Rendering The Future (layman's version... by a layman...)
That's an interesting point. Could Bungie maybe use their Bungie.net token platform as the place you go to buy content and then just give you appropriate codes for each system as needed? That'd be a huge innovation, helpful to gamers, and thus fairly unlikely :)
Rendering The Future (layman's version... by a layman...)
That's an interesting point. Could Bungie maybe use their Bungie.net token platform as the place you go to buy content and then just give you appropriate codes for each system as needed? That'd be a huge innovation, helpful to gamers, and thus fairly unlikely :)
Yeah I definitely understand what you mean about it being unlikely, Song and Microsoft don't take kindly to cross-platform anything. But I think there has to be some of this if you'll be able to import your 360/PS3 character to XB1/PS4. I mean what happens if you earn a gun or armor in DLC for the 360, then upgrade to the XB1? At minimum they have to keep your character in the cloud so you can keep your gear, otherwise you get a very unsatisfactory experience with lost items because you upgraded to a better looking Destiny.
Rendering The Future (layman's version... by a layman...)
Ah yes. I knew that... at one time... :p
P.S. Thanks for all the replies. Nice to get things clarified and corrected. :)
Rendering The Future (layman's version... by a layman...)
In Mass Effect 3 multiplayer what guns and maps you have access to is stored elsewhere, but the game degrades gracefully if you switch to a 360 that doesn't have those gigs of content downloaded. Perhaps Destiny will work like that? You might not be able to play with the newest weapons you bought elsewhere but the game will still mostly function.
Rendering The Future (layman's version... by a layman...)
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
Do you think that's smart? I would be mega surprised if the 360 received all the content over the course of Destiny's 10 year plan. When it comes time to move on, will you be able to port over your characters? Will you have to re-buy content on the new system? Will a PC version come along and just be plain best in every way?I kind of wish Bungie would be more upfront about this, but it seems to me the smart thing is just to go next-gen right from the start.
Are you serious? This is why I have a hard time not seeing any time you post here as another faux-Andy Kaufman attempt at trolling.
OP talks about how they're looking to keep the graphics between 360 and next/current-gen boxes as much in parity as possible. For some reason this, in your mind, leads into a question about porting characters from one box to another? Where in the fuck are the two even remotely connected?
Jesus Christ…
- m
Rendering The Future (layman's version... by a layman...)
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
Do you think that's smart? I would be mega surprised if the 360 received all the content over the course of Destiny's 10 year plan. When it comes time to move on, will you be able to port over your characters? Will you have to re-buy content on the new system? Will a PC version come along and just be plain best in every way?I kind of wish Bungie would be more upfront about this, but it seems to me the smart thing is just to go next-gen right from the start.
Are you serious? This is why I have a hard time not seeing any time you post here as another faux-Andy Kaufman attempt at trolling.OP talks about how they're looking to keep the graphics between 360 and next/current-gen boxes as much in parity as possible. For some reason this, in your mind, leads into a question about porting characters from one box to another? Where in the fuck are the two even remotely connected?
Jesus Christ…
- m
Ho hum. Read the last sentence of what I quoted. Never expected YOU to lack even that basic skill. Here it is:
This is awesome for me since I'll be playing on the 360 for a while.
That means he's buying the 360 version, hence my comment.
Rendering The Future (layman's version... by a layman...)
Want to get excited about Destiny? Do what I did a few months back.
- Scrape Bungie.net for Destiny images.
- Set up a slide show on a big monitor.
- Step through.
- Pick up jaw off of the floor.
Rendering The Future (layman's version... by a layman...)
1. They did a lot of work to make sure Destiny's new graphic features worked on the 360. If I read it right it looks like they managed to give every scene dynamic lighting (with full interactive shadows and light flickers and stuff) while still fitting within the current generation of hardware. This is awesome for me since I'll be playing on the 360 for a while.
Do you think that's smart? I would be mega surprised if the 360 received all the content over the course of Destiny's 10 year plan. When it comes time to move on, will you be able to port over your characters? Will you have to re-buy content on the new system? Will a PC version come along and just be plain best in every way?I kind of wish Bungie would be more upfront about this, but it seems to me the smart thing is just to go next-gen right from the start.
Are you serious? This is why I have a hard time not seeing any time you post here as another faux-Andy Kaufman attempt at trolling.OP talks about how they're looking to keep the graphics between 360 and next/current-gen boxes as much in parity as possible. For some reason this, in your mind, leads into a question about porting characters from one box to another? Where in the fuck are the two even remotely connected?
Jesus Christ…
- m
Ho hum. Read the last sentence of what I quoted. Never expected YOU to lack even that basic skill. Here it is:
This is awesome for me since I'll be playing on the 360 for a while.
That means he's buying the 360 version, hence my comment.
Right, the comment that I'm saying is dumb. Because of what he said. And then because of what you said in reply. In your comment. That you wrote. That is dumb. If the guy is talking about how glad he is that the devs are doing their best to keep graphic parity from 360 to nextgen/currentgen, why would that lead you into something as inane as 'I hope characters can be ported, derp derp derp!?' How would that not be a theoretical problem w/ *any* console/PC, of any gen? It justs seems like a poor grab at trying to hijack a legitimate appreciation for the programmings skills that will give a nice *broad* base of gamers a happy experience into an 'oh, don't forget we're all gonna die at some point in real life. So why bother?' Of *all* the things one could come up with as a legitimate talking point around this, to bring up CHARACTER PORTING, the most NON-corporeal element of a game… "Oh golly gee willikers, I hope they can port my character to my Bungie app on my Android, because I bet it must be *real* tough to make that table of stats and the uber-cool graphics that make my character's shoulder pads all nice and shiny as he flexes his pistol grip when I check him out on my PS4. I mean, I heard the Android can't handle binary code for the number 3, and my character is stuck on level 33, so I'm soooo boned! BUNGIE I IZ TRUSTED TO YOU!" is about as equally on-point.
I apologize if I missed the Bungie news announcement that states your character is an actual living sentient chunk of 256MB code that requiires more flux-capacitors than the 360 can currently handle. Now THAT'S an outrage! :-)
oy vey.
- m
This
The best part is you can have your phone, laptop, whatever cycle through these in tandem as you work and passively remind yourself this is going to happen. It certainly takes less work than watching recap videos and debates about how dunked on you will be by the ai and human players.
after Destiny launch
After the Destiny launch and the console wars simmer down, it will be clear that PS4 is the future of Destiny.
(I think lol)
Rendering The Future (layman's version... by a layman...)
Though it IS a loose correlation, I feel its relateively justifiable. Cody's thought, though slightly of an ADD nature, was basically, great that Bungie is tackling this cross-gen technical issues, but, a thought: will it really be worth playing on the old gen at all anyway?
In that vein, fingers crossed that all character data is stored server-side, can be accessed by any gamertag linked to your B.Net account from any console it is logged onto from. The only thing that is determined by console is the pool of people you are able to play with at any given moment.
Rendering The Future (layman's version... by a layman...)
Since when do forum threads never take turns and junction off in sub conversations?
Dude seriously. Stop picking fights. My post wasn't angry, wasn't inflammatory, and wasn't out of line.
Rendering The Future (layman's version... by a layman...)
The only thing that is determined by console is the pool of people you are able to play with at any given moment.
This is my hope. Of course the dream would be that there were no walls between players on any console, but if wishes were horses beggars would ride.
This
The best part is you can have your phone, laptop, whatever cycle through these in tandem as you work and passively remind yourself this is going to happen. It certainly takes less work than watching recap videos and debates about how dunked on you will be by the ai and human players.
The screens go a long way, but just about any game can create nice captures. I'm very quickly getting to the point where I just want to experience it. There's only so much Deej (et al) can wax philosophically about...we need something to chew on...soon.
Is the beta still going to be Spring, or has it moved to Summer?
I'm getting ANXIOUS!
This
Is the beta still going to be Spring, or has it moved to Summer?
The beta hasn't been spring since before the September release date was announced.
Rendering The Future (layman's version... by a layman...)
These are nice explanations.
Latest evidence from yesterday
Latest evidence from yesterday
What? Summer has just ended. Where's my beta?!
;P
Latest evidence from yesterday
What? Summer has just ended. Where's my beta?!
;P
You have a lot to learn. Only Two places matter in the world of video games: USA and Japan, and both are in the northern hemisphere.
Latest evidence from yesterday *hides face in shame*
- No text -
honestly
IF I build my characters on 360 and then get the PS4,
I'm gonna be HELLA PISSED if I can't xfer my chars to PS4.
I'm sure that Bungie know this
and they tend to go the extra mile backend-wise to ensure that players get the most out of their games.
I'm thinking of file shares and render minutes, stats APIs, And in-game there is Forge and Theater.
They seem to invest in parts of the game experience that other companies don't seem to think are important. Look how long ago they revamped b.net. They decided that what they had wasn't going to be good enough for their Destiny plans and they started making changes long before the game was due to come out.
I could see Sony and MS trying to block cross-platform play but I suspect that Bungie will make sure that such concerns don't prevent you from carrying over characters and character progression between systems. (Urrrrr, except for PS exclusives ;-) DOH!