收藏
发布新帖
开启左侧

[参考源件] 3D游戏特效简介

[复制链接]
铁豌豆 发表于 2009-3-23 10:32 | 显示全部楼层 |阅读模式

马上注册,加入CGJOY,让你轻松玩转CGJOY。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
一,动态模糊(Motion Blur)

        3D游戏玩家常常会问这么个问题:为什么每秒24帧的速度对于电影来说已经足以获得很流畅的视觉效果,而对于电脑游戏来说却非常不流畅?原因很简单,摄像机在工作的时候并非一帧一帧绝对静止地拍摄,它所摄下的每一帧图像已经包含了1/24秒以内的所有视觉信息,包括物体在这1/24秒内的位移。如果在看电影的时候按下暂停键,我们得所到的并不是一幅清晰的静止画面,而是一张模糊的图像。

        传统的电脑3D图像做不到这一点,游戏里的每一帧就是一幅静止画面,如果你在运动的过程中抓一张图片下来,得到的肯定是一幅清晰的静态图。所以,动态模糊技术的目的就在于增强快速移动场景的真实感,这一技术并不是在两帧之间插入更多的位移信息,而是将当前帧同前一帧混合在一起所获得的一种效果。

楼主热帖

铁豌豆发表于 2009-3-23 10:33
二,景物纵深(Depth Of Field)

有摄影基础的朋友一定都熟悉“景深”这个词。如果非要解释这个词的话就是“在摄影机镜头或其他成像器前,沿着能够取得清晰图像的成像器轴线所测定的物体距离范围”。说得再简单一些,就是距离不同的景物,呈现出有些地方清楚有些地方模糊的效果。这种效果能够更加突出需要反应的焦点,让画面的主题更加鲜明。
三,软影(Soft Shadow)

从字面上直译过来就是“软影”,不过叫“柔和阴影”似乎更合适。我们知道生活中很多阴影的过渡都是有渐变,而软影的作用就是要模拟这种效果,在阴影周边制造虚化的效果。软阴影本身并不是指一种技术,而是指通过采用某种技术达到的效果。

在说软阴影前先说说阴影的生成方法。一般在游戏中采用的阴影生成方法有两种:Shadow Mapping(阴影映射)和Shadow Volumes(体积阴影)。

Shadow Mapping(阴影映射)是一种图像空间的技术,它是在以光源位置作为视点的情况下渲染整个场景的深度信息,然后再使用这些深度信息去决定场景的哪一部分是处于阴影之中。它有锯齿并且依赖z-缓冲技术。由于可以在不减少帧率的情况下达到真实感光照和阴影效果,编辑器允许在场景中放置任意数目的静态光源,它会为每个面预计算光流量(light flow)和静态阴影,因此现代商业3D游戏中多数都会使用到阴影映射。阴影映射效果的一个影响因素是Shadow Map Size,如果size(尺寸)小,会导致阴影边缘模糊不清、闪烁、出现大型锯齿。增大size能提高阴影质量,但帧速会受到影响。

Shadow Volumes(体积阴影)是一种基于几何形体的技术,它需要几何体在一定方向的灯光下的轮廓去产生一个封闭的容积,然后通过光线的投射就可以决定场景的阴影部分(常常使用模板缓冲去模拟光线的投射)。这项技术是像素精确的,不会产生任何的锯齿现象,但是与其他的技术一样,它也有缺点。最主要的两个问题一是极度依赖几何形体,二是需要非常高的填充率。同时,体积阴影也相当依赖CPU,视觉效果方面是产生的阴影比较“硬”。

四,延迟渲染(Deferred Rendering)

延迟渲染技术可以说是未来游戏的发展趋势,其原理是先把全景多边形物体的信息比如位置、法线面、各种贴图渲染到G-Buffer(缓冲区)内,延迟打光步骤。

延迟渲染可以避免在渲染过程中出现无效渲染(渲染器在运算过程中做了某些无用功)的现象和提高出现大量复杂、耗时的像素渲染时的工作效率。

延迟渲染可以创建大量的点光源以及产生真实的光照结果,提高画面的真实度;也可以避免对不可见的点进行光照,节省了资源。不过,延迟渲染并不是很适合DX9,在目前的硬件上必须以牺牲MSAA(多重取样抗锯齿)为代价(使用了延迟渲染的《S.T.A.L.K.E.R.》、《幽灵行动:尖峰战士》都无法支持多重取样抗锯齿),而在新的DX10硬件上则没有问题 。最新版本的UE3引擎已经为DX10做了优化,MSAA已经完全没有问题(《战争机器》PC版在DX10下即可开启抗锯齿),但是之前面世的几个采用UE3的游戏都是基于老版本的UE3开发,所以对MSAA的支持还存在各种问题。对于目前的几个UE3引擎游戏,它们并未使用延迟渲染技术。
(注:UE3即虚幻3,是当今全球最优秀的游戏引擎)
loveqncq发表于 2010-9-3 17:57
就这么点啊
高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则