Feb 28, 2010

Uncharted2 after 1 chapter play

Today I have played uncharted 2 little bit. It has very beautiful graphics as people said. I like to share some of my findings.The game uses shadow map for each light, each flash light and sky light. I think the sky light shadow map moves according to the camera; I can notice the boundary some times.

Shadow doesn't appear when the characters are already inside of shadow. Instead SSAO is used under shadow. This is first time for me to see implemented SSAO. It was very nice but not as much as I expected. The ambient intensity changes by changing camera position. Especially grass had a bad look AO.

Although the playground is half-out-door, it is actually indoor rendering. I guess they used portal culling for each zone as usual for indoor engines.

Reflection on water surface was very very impressive. My best guess is that they redraw objects one more time with proper culling.

Most of walls or any surfaces were wrapped with high resolution textures and normal maps. This raises the quality of this game very high.

Some of specular with low EXP values gave very much realism. I have always thought specular must be shining, but I might be wrong. Especially one of white statues looks so nice.

Foot of the protagonist are implemented by Inverse-Kinematics, but sometimes it looks weird; it bends too much and too rounded.

I heard that Depth of field on Uncharted 2 is run by SPU. It was very natural and helped players to focus on the target. I think it might be better if DOF was used also for cut-scenes.

Eyes of characters get too much specular. It shines too much and got my attention unnecessarily.

I don't see motion-blur and I don't feel alias problems, so I guess it is using pre-lighting not deferred shading. I wonder whether lighting calculation is done by SPU or shaders.

Interestingly bullet decals are rendered by parallex mapping. Unlike unreal games, parallex mapping is not much used.

Generally the colors of buildings were well balanced from any point of view. I am guessing it is due to artists' effort or good supporting tools. If artists work on Max or Maya and have to pass through a long contents pipe line then they can hardly response to the final result.