下雪示例

title_Snow.png

本页面的内容:

以下粒子系统是我们为此实例所创建的下雪特效。 我们鼓励您在Cascade中打开它以查看每种特效是如何进行组合的。

如需获得更多关于Cascade和粒子系统的信息,请查阅粒子系统文件

暴风雪

section_Blizzard.png

Content Browser Location: Game/Effects/Particles/Snow/P_Blizzard

暴风雪特效是使用带光照的半透明材质的大量微小平面粒子的GPU平面粒子系统 。 雪花上使用的材质用了 Enable Responsive AA (启用具有响应的抗锯齿)标识,您可以在材质编辑器的属性面板下的 Translucency (半透明)分类下找到它。

enableResponsiveAA.png

此属性被用于微小的半透明对象(本例中为_snowflakes_),原因是虚幻引擎的临时抗锯齿将很可能会损失轮廓质量。 但是, **Enable Responsive AA** (启用具有响应的抗锯齿) 应仅仅用于此类例子中,因为它会产生背景的锯齿。

WithEnable.png WithoutEnable.png
启用具有响应的抗锯齿 不启用具有响应的抗锯齿

较大的 不带光照 (例如 自发光 )平面粒子会生成大量的薄雾或雾,它们填充到特效中并使得环境在感觉上更为完整。

暴风雪粒子系统还使用了低速向量的速度网格,以使得雪花平面粒子在进入体积时减速。 这种慢速特效模拟了在粒子上拖曳的感觉,同时有助于碰撞,使得它们感觉不那么僵硬。 矢量场可以非常方便地通过视口菜单,选择 视图 > 矢量场 在Cascade中观察到。

ShowVectorFields.png

黄色框代表矢量场,其中的红线代表体积内的每个位置处的矢量。

如果您使用 Collision (Scene Depth) 碰撞(景深)模块,您可以加大 Radius Bias (半径偏移)属性来让粒子看起来在表面上"glide around"(滑行)。 这个技巧被用于暴风雪粒子系统中,以让表面周围产生受空气影响的感觉。

边缘处的风雪流

EdgeBlown.png

内容浏览器位置: Game/Effects/Particles/Snow/P_Blizzard_EdgeBlow

边缘处的风雪流特效是简单的GPU平面粒子系统 ,它模拟了穿过缝隙和洞穴裂缝以及入口附近的风雪流。 您可以在洞穴顶部的洞附近找到它。 碰撞主要通过 Collision (Scene Depth) 碰撞(景深)模块进行处理,它会导致GPU粒子基于 Scene Depth (景深)几何体缓冲来进行碰撞。

EdgeBlownCascade.png CollisionSettings.png

此模块使得粒子可与世界互动,以让它们与表面进行碰撞。 取决于Collision (Scene Depth) 碰撞(景深)模块的不同设置,它们也可粘附于关卡表面或沿着关卡表面滑行。

雪眩光

SnowFlare.png

雪炫光特效是暴风雪粒子系统的更小的更简化版本的GPU平面粒子系统 ,主要用于需要光照与雪和雾进行互动的区域。 您可以在洞穴外的雕像处观察到这种效果。

关键的区别是在 暴风雪 特效中,薄雾粒子是 不带光照 的。 这表示它们无法吸收关卡中的任何光照颜色,取而代之的是,它们将 Emissive (自发光)通道用于颜色。 但是在 Snow Flare (雪炫光)特效的情况下,薄雾粒子使用材质中的 Lit Translucency (光照半透明),这表示它们可获取光照的颜色。 把它们区别开来的原因是,光照半透明在着色器上具有额外的指令消耗,这表示如果所有的雪雾粒子都使用它,场景在应对偶尔的颜色变换时就不得不进行许多处理,这会导致低效率并很可能造成对性能的影响。

取而代之的是,雪炫光粒子系统被作为暴风雪特效的本地化版本,并且仅被放置在薄雾粒子 需要 对光照进行响应的位置处。 这样比起让所有的薄雾粒子随时对光照进行响应来说要高效得多。