杀戮地带2的渲染技术(Rendering_Technology_Of_Killzone_2)
来源:互联网 发布:mysql 根据某字段排序 编辑:程序博客网 时间:2024/04/28 05:49
http://www.guerrilla-games.com/presentations/GDC09_Valient_Rendering_Technology_Of_Killzone_2.pptx
http://www.guerrilla-games.com/presentations/GDC09_Valient_Rendering_Technology_Of_Killzone_2_Extended_Presenter_Notes.pdf
一个老文章了,不过有一些细节很不错。
killzone2,开发历时4年。
DeferredShading
deferred shading现在过于普遍了,基本相关的介绍直接跳过。
开始guerrila尝试了light prepass,但是对于kz来说,没有那么大的需求来做light prepass,如果像cryengine和bungie的确是最后的光照比较复杂,有必要走light prepass类的pipeline,kz就没有必要,在这种情况下,light prepass的效率还低于传统的deferred shading,所以最后就用了传统做法。
kz2的gbuffer格式:
lighting accumulation比较特殊,也说明了kz2的lighting到达什么级别,是用来存储
- indirect lighting,
- static object的indirectlighting是放在light map中
- dynamic object用的是spherical harmonics系数来存储间接光
- reflection map:也就是environment map
- 在render lighting的时候,使用zcull, depth bound test和stencil来尽量减少lighting的区域
- lighting的代码可以根据具体情况做一些简化,比如有的就不需要specular等
- 使用stencil mask来标记完全在shadow中的pixel,这样可以skip lighting
- 全屏的lighting的时候,也使用了depth bound test,这样去分几级的lighting可以进行lighting quality上的一些lod
shadow
- soft shadow filter是poisson disk filter,这个现在都这样了。
- 比较小的东西就不cast shadow,这个threshold可以per object的指定,也可以per light的指定
- 使用camera view frustum的bounding sphere来做为shadow view frustum构建的依据,而不是针对camera view frustum本身,因为camera会转,根据camera frustum构建会造成有闪烁出现
- 杀戮地带2的渲染技术(Rendering_Technology_Of_Killzone_2)
- 《杀戮地带2》中的延迟渲染
- 《杀戮地带4》光照技术
- [siggraph14]杀戮地带的反射和体积光照技术
- CreationOfKillzone3(杀戮地带3的制作)
- 深入Guerrilla Games解密次世代开山大作《杀戮地带暗影坠落》(The technology of Killzone Shadow Fall)
- 纯技术地带
- 《杀戮地带:暗影坠落(Killzone: Shadow Fall)》工程师讲解使用屏幕空间反射系统
- 这个世界的灰色地带
- 《赛车总动员2》的渲染技术
- [sig12]《正当防卫2》的渲染技术1
- 《最终幻想》的渲染技术
- DataListBox的渲染技术
- 渲染技术的总结
- Python的易混地带
- Python的易混地带
- 【Unity3D实战项目:疯狂杀戮】角色模型的行走控制(一)
- 基于物理的渲染技术(PBR)系列一
- 【Java入门】练习示例
- C#生成随机数的三种方法
- nagios中的跳跃表
- selection sort 选择排序
- 模式学习
- 杀戮地带2的渲染技术(Rendering_Technology_Of_Killzone_2)
- 126.Easier said than done. 说得容易,做得难
- IE6时代即将终结,微软明年1月启动IE自动升级
- 黑马程序员---枚举
- Android NDK带来了什么
- 第十六周第二天
- Android NDK 概览
- js小技巧 实现字体大中小的另一种方法
- 【Machine Learning】最近做的若干实验的总结