重磅:3D光影已经完善,LayaAir2.6.0重构了阴影系统!

LayaAir2.6.0版本对阴影系统进行了重构,提升渲染性能、效果和易用性。包括使用硬件级Depth纹理生成ShadowMap以提高性能,硬件ShadowMap提升效果,自定义Shader阴影易用性增强,以及解决了阴影抖动、明暗调节、精度和批次优化等问题,旨在为3D场景带来更真实的视觉体验。
摘要由CSDN通过智能技术生成

早在去年9月的2.3版本中,LayaAir引擎就支持了任意数量和任意类型的实时光源等,让场景的实时光照等渲染效果得以大幅提升。在上个版本重构完善PBR的时候,还接入了全局光,不断加强3D场景中关于光的效果。

而与光效息息相关的另一个重要系统“阴影系统”,也是三维引擎中最常用的渲染功能之一。尤其是实时阴影相对于静态阴影,会大幅提升场景的生动性,带来更真实的视觉体验。因此,一个良好的阴影算法从引擎使用的角度来看是非常重要的。

LayaAir引擎团队本着精益求精的态度,在2.6.0版本中,对阴影系统进行了重构,针对现有的阴影系统功能进行了诸多改进和一些新特性的增加,带来了性能、效果、以及易用性的提升,下面我们来进行逐条讲解。

一、提升生成ShadowMap的渲染性能

在以前引擎版本的阴影中,阴影使用普通渲染目标,在渲染时需要编码,采样时还需要解码。本次的2.6.0版本中,重构并使用了硬件级的Depth纹理来生成ShadowMap,大幅节约了渲染 ShadowMap的开销,充分挖掘了硬件潜力,所有平台下,均可大幅度提升生成ShadowMap渲染性能。

二、使用硬件ShadowMap提升阴影效果

在WebGL2.0下,我们本次的2.6.0版本中,使用了ShadowMap硬件纹理,对阴影性能与效果进一步做了提升。ShadowMap纹理的特点是由硬件进行深度比较,并且可以先比较后进行线性过滤,可谓是硬件级的PCF,不仅带来了性能的提升,还带来了效果的提升,一箭双雕。

三、提升自定义Shader阴影易用性

开发者使用以前的引擎版本,用自定义Shader实现阴影有些复杂,尤其是产生阴影的pass和渲染的pass混淆在一起时,不太友好。本次的2.6.0版本中,剥离ShadowCaster为独立pass,使得结构更加清晰,一目了然。让自定义Shader实现阴影更加简单。

四、大幅提升阴影效果和稳定性

在以往引擎版本的阴影系统中,我们移动摄像机经常会发现阴影的边缘会剧烈抖动,视觉效果非常难受,本次重构我们重点考虑了阴影效果的稳定性,解决摄像机移动和旋转时阴影边缘抖动的问题,大幅提升阴影效果和稳定性。在移动摄像机时,你会发现阴影坚若磐石,达到了烘培级阴影的稳定性,整体来说为开发者带来了极

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值