今天实现的内容:
没关于有脚步声的问题,即使按照老师的办法将射线添加一个layermask并且将角色的layer设置为Player也没有用,这让我很疑惑。
可以观察到,如果没有为射线设置layermask,蹲下时射线打到的物体标签为Player。难道说设置了layermask射线碰到其它layer就无了?于是我大胆尝试了一下。
我把这个盒子的layer设置为Player,站着踩了上去,站着的时候踩在default上是可以发声的,射线也能检测到tag,但是踩在这个layer为Player的箱子上时却不能了。说明我的想法可能是对的。也就是说,射线遇到Player这个layer就不见了。
然而互联网上没有佐证我的猜测的。
直到我把射线的maxDistance的实参,我之前用的characterController.height,改成了2f,奇迹发生了,蹲下居然能发声了。但是我想不通为什么。characterController.height这个参数即使蹲下了也应该有0.8f的值,为什么maxDistance改成2f就可以了?我改成1.5f试了一下,还是可以,1f就不行了。1.2f时出现了站着没声音但是蹲下有声音的情况。我猜测可能是对于蹲下来说,0.8f还是太小了,射线不足以抵达地面。
这个问题就这样结了把。