UnityEffects(2)之ProjectorShadow(手游上的实时阴影方案)

本文探讨了在手游上实现实时阴影的一种方法——ProjectorShadow,它使用replaceShader生成“轮廓”图,并通过Unity的Projector组件投射到场景中。相比shadowMap,ProjectorShadow不依赖DepthTexture,只需渲染产生阴影的物体,性能更优,但无法处理物体遮挡问题。文中还介绍了优化阴影边界的技术,并列举了优缺点和实际应用案例。
摘要由CSDN通过智能技术生成

UnityEffects(2)之(2)ProjectorShadow(手游上的实时阴影方案)

上一篇说到了在unity5.x中实现shadowMap的方法(UnityEffects(1)shadowMap(阴影映射))。但是由于它需要使用DepthTexture有一定的硬件要求(参考这里:http://docs.unity3d.com/Manual/SL-DepthTextures.html),而且是一个posteffect(后期效果),在手机上面还是效率不高。


手游上面的人物阴影一般都是比较取巧的方法(毕竟没有这么多人用机皇:),基本上遵循“够用就好,看起来不错就好”的原则),一种是给人物脚底贴一个黑圈圈,第二种是使用projector。第一种就不提了,效果不好。这里我们就讨论一下后者,使用投影来实现手游中的实时阴影。据说猪场的《功夫熊猫3》中的阴影也是使用类似的方法实现的,效果不错,但是阴影投影到台阶这种不接受阴影的物体就会有一点小穿帮,也是这种方式的一个缺点,如下图:


建筑物等静态物体产生的阴影一般用光照烘焙来实现,这里就不讨论了。

江湖惯例先贴图:

 

工程放在:

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值