今天無意間鏈到了Unreal的網頁,看到了
UnReal Engine 3的overview.因為是游戲引擎,所以諸如物理系統、腳本系統、動畫、AI、聲音、網絡基本都不在我的觀察之列,我只看了一下visual effect,并著重研究了一下當前最好引擎的陰影實現效果。
下面是Unreal Engine 3自己的陳述和截圖。
- 64-bit color High Dynamic Range rendering pipeline. The gamma-correct, linear color space renderer provides for immaculate color precision while supporting a wide range of post processing effects such as light blooms, lenticular halos, and depth-of-field.
- Support for all modern per-pixel lighting and rendering techniques including normal mapped, parameterized Phong lighting; custom artist controlled per material lighting models including anisotropic effects; virtual displacement mapping; light attenuation functions; pre-computed shadow masks; directional light maps; and pre-computed bump-granularity self-shadowing using spherical harmonic maps.
- Advanced Dynamic Shadowing. Unreal Engine 3 provides full support for four shadowing techniques:
- Dynamic stencil buffered shadow volumes supporting fully dynamic, moving light sources casting accurate shadows on all objects in the scene.
- Dynamic characters casting dynamic soft, fuzzy shadows on the scene using 16X-oversampled shadow buffers.
- Ultra high quality and high performance pre-computed shadow masks allow offline processing of static light interactions, while retaining fully dynamic specular lighting and reflections.
- Directional Light Mapping enables the static shadowing and diffuse normal-mapped lighting of an unlimited number of lights to be precomputed and stored into a single set of texture maps, enabling very large light counts in high-performance scenes.
- All of the supported shadow techniques are visually compatible and may be mixed freely at the artist's discretion, and may be combined with colored attenuation functions enabling properly shadowed directional, spotlight, and projector lighting effects.
- Powerful material system, enabling artists to create arbitrarily complex realtime shaders on-the-fly in a visual interface that is comparable in power to the non-realtime functionality provided by Maya.
- The material framework is modular, so programmers can add not just new shader programs, but shader components which artists can connect with other components on-the-fly, resulting in dynamic composition and compilation of shader code.
- Full support for seamlessly interconnected indoor and outdoor environments with dynamic per-pixel lighting and shadowing supported everywhere.
- Artists can build terrain using a dynamically-deformable base height map extended by multiple layers of smoothly-blended materials including displacement maps, normal maps and arbitrarily complex materials, dynamic LOD-based tessellation, and vegetation layers with procedurally-placed meshes. Further, the terrain system supports artist-controlled layers of procedural weathering, for example, grass and vegetation on the flat areas of terrain, rock on high slopes, and snow at the peaks.
- Volumetric environmental effects including height fog.
- Extensible particle system with visual editor, supporting particle physics and environmental effects.
我們可以看到在全部Unreal官方展示出來的效果中有四條提到了陰影,而且最大篇幅的一條給了陰影,這多少還是可以說明我們研究這個東西還是有點價值的。
|
|
Characters in Unreal Engine 3 produce dynamic soft shadows with self-shadowing. |
Shadows with fuzzy attenuation sweep around the scene as the torch moves. |
|
|
Artist-authored panning and iridescent materials all seamlessly combine with per-pixel lighting and shadowing. |
Normal-mapped translucent object distorts and attenuates the frame buffer, simulating ray-traced reflections. |
|
|
The fuzzy shadows of clouds smoothly roll across the hills, while the windmill's rotating blades cast shadows on the ground beneath. |
Soft-shadowed character standing in a bank of volumetric fog. |
|
|
Light blooms using 64-bit color High Dynamic Range color. |
The subtle interplay of normal mapped diffuse and specular lighting with fuzzy shadows. |
可以看到:
- Unreal Engine 3里邊實現了"soft,fuzzy"的陰影,并沒有說是physically exact,同時也提到了是"Dynamic characters"投射的,也就是說軟陰影仍然是有條件的。
- 預計算的陰影掩碼和紋理仍然是產生良好陰影效果的主要手段,動態對象的陰影仍然采用shadow volume的方式。
- 從圖片效果來看,場景的陰影/光照效果看起來好像仍然采用紋理的方式,物體的陰影的柔和度并不明顯。當然這也可能是室外場景的原因,但是號稱可以在室內室外場景做到無縫鏈接的Unreal Engine 3并沒有給我們展示"很柔和"的陰影。
今天我還根據同步blog的一篇關于Source引擎的文章回復看了一點HDR,發現doom3里邊還沒有真正的HDR,只有bloom,但是到了far cry1.3 patch,以及后來的valve source,Unreal3已經提到把HDR實現了很好的效果。那么同shadow相比較來說,目前的shdow仍然在doom3的shadow volume與貼圖技術混合使用的方法中,有待進一步革新。
原載:http://blog.sina.com.cn/u/40d00f170100020r