在coliderEventsSender里面,获取的voxelInfo是本身所在的位置,而实际应该获取的是本身所在位置脚下的那个位置。解决方法,应该是从本身所在的位置往下投影一个射线,得到脚下的位置
onBlockEnter只触发一次
在coliderEventsSender里面,获取的voxelInfo是本身所在的位置,而实际应该获取的是本身所在位置脚下的那个位置。解决方法,应该是从本身所在的位置往下投影一个射线,得到脚下的位置
onBlockEnter只触发一次
Camera Event触发OnPlay()、MouseDown、Up和按住的事件,分别有2种形式,一个是摄像机中心点,一个是鼠标为准心。
Camera.main.ScreenPointToRay(Input.mouPosition);
Chunk chunk = chunkObject.GetComponent<Chunk>();
获得当前所在block的信息实际上是有意义的,首先最重要的不是获得所在block的类型,主要是要获得所在block的位置,用于在多人游戏中传输玩家坐标。
此外,返回当前所在block类型,可以用于判断玩家所处环境。比如将来要实现火焰/岩浆/水等,event只需要在玩家在这个block里面时触发,而不用在乎自己站在什么block上。
若返回的是脚下的block信息,反而没什么用处。