您的位置:首页 > 移动开发 > Unity3D

【Unity&2.5D&Shader】2D2.5D精灵实时阴影怎么使用

2017-02-24 16:33 483 查看
如果只是单纯的对没有 透明通道的 2D精灵,要求阴影,使用 系统自带 的 材质包 Default-Material,即可实现

如果在此基础上需要添加功能,请自便。



本文章就参考资料1 2DSprite的实时阴影

做出补充,Unity 版本号适用于 5.5.0f3 以及5.5.0p4版本

版本原因,导致下面的两行代码无法使用

transform.GetComponent<SpriteRenderer>().renderer.receiveShadows = true;

transform.GetComponent<SpriteRenderer>().renderer.castShadows = true;

参考部分代码来源
https://forum.unity3d.com/threads/sprite-receive-shadow.357705/




把上面的两行代码



transform.GetComponent<SpriteRenderer>().renderer.receiveShadows = true;

transform.GetComponent<SpriteRenderer>().renderer.castShadows = true;

改为

transform.GetComponent<SpriteRenderer>().GetComponent<Renderer>().receiveShadows = true;

transform.GetComponent<SpriteRenderer>().GetComponent<Renderer>().shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.On;



然后再把 参考资料1 里面的shader带入一个图片

效果如下所示



这个Shader也是有问题的



palmbranch材质包在我的资源库里面

palmbark material.unitypackage

palmbranch项目包(含天空盒子和树木材质包)

standAssets_Skyboxes_Terrain.unity

参考资料:

1.

2DSprite的实时阴影

2.

3.

4.

5.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: