切换到宽版
  • 232阅读
  • 0回复

CryENGINE景深的设置及应用 [复制链接]

上一主题 下一主题
离线天の川
 

Overview概述


在CryENGINE中景深是加强TrackView中Sequence效果的一种手段。
基于一个实时演算工作的相机,你能设置一个明显的景深效果针对整体的场景中。或者你只是想对焦某一个物体,通过对焦距离设置生成一个极窄的景深效果。

范例: 改变对焦点的前后位置观察场景的景深变化。
General Concept概念


在CryENGINE中有三个数值来让你控制调整景深效果:FocusDist(对焦距离),FocusRange(景深半径),BlurAmount (模糊大小)。其中最后一个还比较容易理解,但前两个还是比较费解的,下面我会详细解释下:

FocusDist的解释是你对焦点离相机的距离;正值在相机前方,负值在后(当然它是个理想值!)
FocusRange的解释是最大模糊达到的范围 (大小基于BlurAmount) 它在两个方向是以直线方式延伸:一个面朝相机逐步靠近,一个逐步远离相机。

基于两个方向的有效距离是FocusRange除以二,就是二分之一的FocusRange值小于等于完整的FocusDistance值。

为了进一步说明可以观察下图场景:

这里我设置一个灰色的地面和三个基于不同相机相对位置的角色。
靠左边的角色完整处在对焦近景范围之外。中间的角色完整处在对焦背景范围之外。靠右边的角色的右脚处在对焦范围之内,左脚处在对焦背景范围之外。

注意:这些标记是与地平面对齐的!

这里展示的相同场景的DoF debug显示模式(下面我将再次做下解释),图中你可以清晰看到对焦的区域 。

黑色 代表完全对上焦的区域
灰色 代表大致对上焦的区域
白色 代表完全没有对上焦的区域


Workflow in Sandbox在引擎中的流程


首先,这里有个重要的命令,记住设置:r_hdrdebug 4

Best practice

创建一个toolbox的宏(macros)来实现通过一个按钮来切换开启或关闭。

Tools -> Configure User Commands.
Tools -> Configure Toolbox Macros

当你开启这个debug模式时,你需要关闭动感模糊(r_motionblur 0),因为它会干扰DoF景深的效果的查看。(两个都是类似模糊效果,比较难判断哪个)

在引擎中有两种方式来控制DoF景深:Trackview和Flowgraph。这里我们先说Trackview,因为几乎90%的机率会在这里启用DoF景深效果。
Trackview

在Trackview中有两个节点来控制DoF景深效果:你可以在Director节点下添加DepthOfField节点,或在Camera节点下添加DepthOfField节点。
如果两个节点同时出现,最终会优先考虑第一个节点。如果你想为不同的相机设置一样的DoF效果,可以选择创建在Director节点下。但如果更多的时间你想给予不同相机不同的DoF值,你需要选择创建在Camera节点下,这样你可以有更多的控制。
你可以在这个节点上添加很多关键帧,当然也可以通过曲线来自由控制DoF的效果。

Flowgraph

如果你有场景应用到完整的游戏逻辑控制,你可能需要添加DoF到flowgraph。你可以使用 Image:EffectDepthOfField 节点来达到在trackview里同样参数设置。
使用Interpol:Float节点来平滑消除DoF输入和输出。通常你应该避免使用关闭和太多的自由度通过流程图,因为它很难跟踪和玩家在看什么了。

General Rules注意

确保你的角色在对焦区域中
小心缓慢的对焦,没有跳着对焦 (对3D来说相当重要!)
不要过度使用这个效果,过度的模糊总是会看起来很怪。
不要为遥远的场景添加景深效果,那样你的物件或角色都会看起来像模型Do not us

英文链接

http://docs.cryengine.com/display/SDKDOC2/Proper+Depth+of+Field+Setup+and+Usage

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
要让让这里成为动漫爱好者温馨的天堂~~
官方qq讨论群140439020  官方微信公众号galaxixv
关于论坛G币的获得方法,请参考论坛公告的帖子
http://www.galaxix.com/bbs/read.php?tid=3158
快速回复
限200 字节
批量上传需要先选择文件,再选择上传
 
上一个 下一个