unity 2d sorting group 记录一下
接触unity一段时间 现在才知道了有sortinggroup这个东西 完美解决了我的2d游戏渲染顺序问题
我的2d游戏用的是y轴渲染 本来是没什么问题的 但是角色由很多部位组成,这些部位自身需要设置不同的sortingorder来达到正常的显示效果
但是问题是角色移动的时候,地图里面的其他建筑物和角色处于同一个渲染层 但是角色身体部位的sortingorder比建筑物的高 角色怎么样都是无法被遮挡的
百度了一下才知道有sortinggroup这个东西 完美解决了我的问题
链接:https://www.zhihu.com/question/381081975
链接2:https://docs.unity3d.com/Manual/class-SortingGroup.html
在角色最上层添加sortinggroup组件,这样的话 角色身体的部位虽然sortingorder不一致 但是他们在同一个分组 ,角色移动的时候也能正常的显示,主角可以被建筑物遮挡
未在角色上添加sortinggroup的效果:
角色的原点在脚下
建筑物的y坐标是比角色小的,理应遮挡掉角色, 但是因为角色身体的部位的sortingorder比建筑物的大 角色没有被遮挡
添加sortinggroup后可以正常的被遮挡掉
(在所有身体部位的父对象上添加sortinggroup)
(sortinggroup添加在FSM上)
效果:
这个建筑物的y坐标比角色的大 一点点 所以不能遮挡掉角色