Uncharted 2 lighting?

On a certain high-profile PS360 game I worked on we had on average 1 to 1.1 million triangles on screen at a time, at 30FPS.
 

I think the lighting from the torch could have been better. They could have noisy displacement of the position of the light source to simulate flicker, and they could have cycled through different mangled models for the shadow of the torch basket to simulate the fact that the flame engulfs the basket and is not a point source at its centre.
 
ModHat: Is it really so hard to keep to technical discussion instead of abstract, subjective ideas about what a developer is capable of given the right conditions.
 
Indeed. RSX could only setup 250MTris/s in the theoretical realm.
Oh this again. A 720p frame has just below a million pixels. Do you really need more than 8 triangles per pixel on average (assuming 30fps target)?
 
There's a lot more to setup rate than just the triangles you think you see on the screen.

Besides, as I implied and as Laa-Yosh mentioned, that figure is nowhere near attainable in a real-world situation.
 
There's a lot more to setup rate than just the triangles you think you see on the screen.
All pixel-sized tris with an overdraw of 8, as an average, is excessive either way, even considering all the passes, volumes, particles you want. If you end up anywhere near there you have a bug in your LOD system.
Besides, as I implied and as Laa-Yosh mentioned, that figure is nowhere near attainable in a real-world situation.
If you're not going to hit setup limits, you're not limited by setup rate. In that case there's no reason to complain about it.
 
If you're not going to hit setup limits, you're not limited by setup rate. In that case there's no reason to complain about it.

Sure, but the original context for the statements was the 1.2Mpolys per second. Or did you miss that :?: I'm a bit confused as to where the complaining is.
 
Holy smoke, this video is all sorts of awesome. :love: :love:

Looks like all these videos are also in Uncharted 2 itself as unlockables. (And you can unlock them right from the start, with in-game cash.)

And yeah, the lighting and most of the shadows are just downright awesome in this game. Really, really nice.
 
Looks like all these videos are also in Uncharted 2 itself as unlockables. (And you can unlock them right from the start, with in-game cash.)

Yeah, I've been watching them during breaks from the game :smile:. Naughty Dog is a cool company.

There hasn't been much mention of the SSAO in this game. One of the better implementations I've seen. Occasionally I notice artifacts in the form of a 'halo effect' around objects and characters, but overall it's a great addition to the engine.
 
1.2 million triangles per scene doesn't necessarily mean that's the total to be rendered... there may be multiple passes for the framebuffer, there may be many shadow buffers, so the actual numbers may be higher.

Also, that 250M is only true if only one additional vertex is needed to draw a new polygon. In reality though, this may be broken by changes in UV continuity, smoothing groups and so on, requiring more vertices by triangle. This is something artists can optimize for but only to limited extent...

Thanks my friend. Also, someone tells me that it is 2 million/frame for Uncharted 2. So I looked at the quote and I cannot decide but I think it is 2 million.

He says "In total- what we try to push through to the graphics chip at one point two million triangles that we try to draw every frame."

I think he is saying that total he is sending to the graphics chip at one point is 2 million polygons.

What do you think?
 
We have to remember that most of the cutscene are actually prerendered. I find the game to be on part with most games, nothing very extraordinary.
 
If you're not going to hit setup limits, you're not limited by setup rate. In that case there's no reason to complain about it.
Wrong. The GPU pipeline is not infinitely deep. Post-setup caches are well under 100 polygons, not 1M polygons. That means that if you have even a few hundred polygons that don't generate many pixels, you're setup limited at those points in time. If you have some large triangles and/or long pixel shaders, your setup engine can only buffer <100 tris; after that it will idle.

Then you have to worry about off screen triangles (you can't cull everything with the CPU), backfacing triangles, zero-pixel triangles, and possibly doubled loads with Z-only passes. You don't have 8 triangles per pixel at your disposal.

RSX can do 250M tris/s when all the triangles are exceedingly simple and very few of the triangles are big enough to take longer than one clock to rasterize. That is very far from reality.
 
Wrong. The GPU pipeline is not infinitely deep. Post-setup caches are well under 100 polygons, not 1M polygons. That means that if you have even a few hundred polygons that don't generate many pixels, you're setup limited at those points in time. If you have some large triangles and/or long pixel shaders, your setup engine can only buffer <100 tris; after that it will idle.

Then you have to worry about off screen triangles (you can't cull everything with the CPU), backfacing triangles, zero-pixel triangles, and possibly doubled loads with Z-only passes. You don't have 8 triangles per pixel at your disposal.

RSX can do 250M tris/s when all the triangles are exceedingly simple and very few of the triangles are big enough to take longer than one clock to rasterize. That is very far from reality.

True, but I see more and more devs to do work at the vertex side to make sure triangle set-up does not become a huge barrier... with libraries like Edge you are going to touch every vertex anyways...
 
We have to remember that most of the cutscene are actually prerendered. I find the game to be on part with most games, nothing very extraordinary.

They're pre-rendered in-engine cutscenes. The lighting is better in cutscenes as they can have more light sources (due to the engine not being used on AI, unknown occurrences etc.)
 
Last edited by a moderator:
Back
Top