1
2
3
You play as Drake, the loveable rogue. Check out this link for more character
development: http://www.penny-arcade.com/com...
5
6
7
8
9
The best implementation of skin in realtime that I’ve seen is the NVIDIA Human Head
demo.




                            ...
When you look at the render on the left vs. an actual picture of Doug Jones, there is a
certain fleshiness that is hard to...
Obviously, movies can go much farther than we can in realtime. We’ll catch up
eventually…I hope.




                     ...
This next section with show lots of pictures using Lazarevic from U2. Note that these
tests are in Rendermonkey, not the g...
14
Lazaravic with standard dot(N,L) lighting.




                                             15
16
The NVIDIA technique divides light into diffuse light that gets absorbed and
immediately retransmitted, versus light that ...
18
Their approach uses essentially 6 layers of blur.




                                                    19
The first layer is essentially no blur. This simulates light that gets absorbed and
immediately retransmitted.




       ...
The use weights for all 5 lightmaps to simulate the light that bounces inside the skin.




                              ...
22
23
The left side is a standard dot(N,L) and the right is with the NVIDIA skin shading.




                                  ...
Key point: The normals that point towards the light tend to look more cyan-ish and
the normals that point away tend to be ...
Comparison of pure dot(N,L) diffuse to the NVIDI SSS technique.




                                                      ...
Their approach looks great, but is very expensive in both memory.




                                                    ...
28
Instead of using 5 gaussian blurs, we’ll try to approximate that with a single 12-tap
blur. It’s not as good, but much, mu...
Check the ShaderX7 chapter for more detail.




                                              30
31
32
33
34
35
36
37
38
39
40
Notice how using different normals for R/G/B seems to cause some blue spottiness.




                                    ...
That’s because you have cases where the blue diffuse is near 1 and the red diffuse is
near 0.




                        ...
Another approach is to do a diffuse calculation for the Geometry and Normal
Mapped normals, and lerp between them taking m...
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Sometimes, in cutscenes, the shots get pretty close, so we need the quality.




                                         ...
You spend most of normal gameplay staring at the back of Drake’s neck, so a separate
pass for SSS was not worth the cost.
...
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
The left shot is one of the first released screenshots before a lot of the tech got in.
The one on the right is what we sh...
85
86
87
88
89
90
91
Notice that the NVIDIA demo has a harsh falloff. It looks great if you do everything
else right, which is why that demo is...
93
Since he looks fleshy, you would think that he has blurry maps.




                                                      ...
95
96
In the demo, they have extremely detailed maps and they use the lighting model to
soften it.




                         ...
IMO what makes skin look right is how light bleeds around the normals. If you paint
soft maps with no detail in the normal...
Notice that there is more detail in the shot on the right. For U2, we really cranked
the detail in the maps and the streng...
100
101
102
103
Don’t bake too much AO into your diffuse maps.




                                                 104
105
You get HDR lighting from having high dynamic range in your LIGHTING. I see a lot of
games that have all the tech for HDR ...
107
108
109
110
Go through the cutscenes again and look for Drake’s tongue. You’ll see what I mean.




                                  ...
I’m a big fan of custom lighting models (i.e. beyond Blinn-Phong). Btw, doing proper
Linear-Space Lighting is more importa...
113
114
Upcoming SlideShare
Loading in …5
×

Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)

1,729 views

Published on

siggraph 2010 uncharted 2

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,729
On SlideShare
0
From Embeds
0
Number of Embeds
118
Actions
Shares
0
Downloads
33
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Hable uncharted2(siggraph%202010%20 advanced%20realtime%20rendering%20course)

  1. 1. 1
  2. 2. 2
  3. 3. 3
  4. 4. You play as Drake, the loveable rogue. Check out this link for more character development: http://www.penny-arcade.com/comic/2009/10/19/. 4
  5. 5. 5
  6. 6. 6
  7. 7. 7
  8. 8. 8
  9. 9. 9
  10. 10. The best implementation of skin in realtime that I’ve seen is the NVIDIA Human Head demo. 10
  11. 11. When you look at the render on the left vs. an actual picture of Doug Jones, there is a certain fleshiness that is hard to explain. That’s what I like about the NVIDIA technique. On some level, it just “feels” like skin. 11
  12. 12. Obviously, movies can go much farther than we can in realtime. We’ll catch up eventually…I hope. 12
  13. 13. This next section with show lots of pictures using Lazarevic from U2. Note that these tests are in Rendermonkey, not the game engine. 13
  14. 14. 14
  15. 15. Lazaravic with standard dot(N,L) lighting. 15
  16. 16. 16
  17. 17. The NVIDIA technique divides light into diffuse light that gets absorbed and immediately retransmitted, versus light that bounces around inside the skin for a while before exiting. Not that the SSS light is more red-ish. 17
  18. 18. 18
  19. 19. Their approach uses essentially 6 layers of blur. 19
  20. 20. The first layer is essentially no blur. This simulates light that gets absorbed and immediately retransmitted. 20
  21. 21. The use weights for all 5 lightmaps to simulate the light that bounces inside the skin. 21
  22. 22. 22
  23. 23. 23
  24. 24. The left side is a standard dot(N,L) and the right is with the NVIDIA skin shading. 24
  25. 25. Key point: The normals that point towards the light tend to look more cyan-ish and the normals that point away tend to be more red-ish. 25
  26. 26. Comparison of pure dot(N,L) diffuse to the NVIDI SSS technique. 26
  27. 27. Their approach looks great, but is very expensive in both memory. 27
  28. 28. 28
  29. 29. Instead of using 5 gaussian blurs, we’ll try to approximate that with a single 12-tap blur. It’s not as good, but much, much cheaper. 29
  30. 30. Check the ShaderX7 chapter for more detail. 30
  31. 31. 31
  32. 32. 32
  33. 33. 33
  34. 34. 34
  35. 35. 35
  36. 36. 36
  37. 37. 37
  38. 38. 38
  39. 39. 39
  40. 40. 40
  41. 41. Notice how using different normals for R/G/B seems to cause some blue spottiness. 41
  42. 42. That’s because you have cases where the blue diffuse is near 1 and the red diffuse is near 0. 42
  43. 43. Another approach is to do a diffuse calculation for the Geometry and Normal Mapped normals, and lerp between them taking more red from the Geometry normal and more Green/Blue from the normal mapped normal. 43
  44. 44. 44
  45. 45. 45
  46. 46. 46
  47. 47. 47
  48. 48. 48
  49. 49. 49
  50. 50. 50
  51. 51. 51
  52. 52. 52
  53. 53. 53
  54. 54. 54
  55. 55. 55
  56. 56. 56
  57. 57. 57
  58. 58. 58
  59. 59. 59
  60. 60. 60
  61. 61. Sometimes, in cutscenes, the shots get pretty close, so we need the quality. 61
  62. 62. You spend most of normal gameplay staring at the back of Drake’s neck, so a separate pass for SSS was not worth the cost. 62
  63. 63. 63
  64. 64. 64
  65. 65. 65
  66. 66. 66
  67. 67. 67
  68. 68. 68
  69. 69. 69
  70. 70. 70
  71. 71. 71
  72. 72. 72
  73. 73. 73
  74. 74. 74
  75. 75. 75
  76. 76. 76
  77. 77. 77
  78. 78. 78
  79. 79. 79
  80. 80. 80
  81. 81. 81
  82. 82. 82
  83. 83. 83
  84. 84. The left shot is one of the first released screenshots before a lot of the tech got in. The one on the right is what we shipped. The one on the left has lots of hacks that we eventually took out, such as that orange glow around Drake’s skin. 84
  85. 85. 85
  86. 86. 86
  87. 87. 87
  88. 88. 88
  89. 89. 89
  90. 90. 90
  91. 91. 91
  92. 92. Notice that the NVIDIA demo has a harsh falloff. It looks great if you do everything else right, which is why that demo is the gold standard for skin in realtime. 92
  93. 93. 93
  94. 94. Since he looks fleshy, you would think that he has blurry maps. 94
  95. 95. 95
  96. 96. 96
  97. 97. In the demo, they have extremely detailed maps and they use the lighting model to soften it. 97
  98. 98. IMO what makes skin look right is how light bleeds around the normals. If you paint soft maps with no detail in the normals, it just looks flat. 98
  99. 99. Notice that there is more detail in the shot on the right. For U2, we really cranked the detail in the maps and the strength of the normals and then let the lighting model soften it. 99
  100. 100. 100
  101. 101. 101
  102. 102. 102
  103. 103. 103
  104. 104. Don’t bake too much AO into your diffuse maps. 104
  105. 105. 105
  106. 106. You get HDR lighting from having high dynamic range in your LIGHTING. I see a lot of games that have all the tech for HDR lighting, but it still looks flat. The reason 99% of the time is that they have too much black in their textures. For an example of a game doing a really good job of managing their textures, check out Mirror’s Edge. 106
  107. 107. 107
  108. 108. 108
  109. 109. 109
  110. 110. 110
  111. 111. Go through the cutscenes again and look for Drake’s tongue. You’ll see what I mean. 111
  112. 112. I’m a big fan of custom lighting models (i.e. beyond Blinn-Phong). Btw, doing proper Linear-Space Lighting is more important than everything in this presentation combined. 112
  113. 113. 113
  114. 114. 114

×