你玩吃鸡游戏有没有这样的经历,往往只有当枪在你的视野内时,才可以捡起,而如果你背对枪,就算距离很近时,也没有办法捡起。如何用Unity来实现类似的功能呢,来学习吧!
Mesh Renderer:
Mesh Renderer
即网格渲染器,如果在游戏中,相机可以捕捉到物体,则会通过Mesh Renderer
对物体进行渲染,因此我们可以通过Mesh Renderer
来判断物体是否在相机视野中,从而做出判断
实现方式:
首先确保物体上面具有Mesh Renderer
,然后通过脚本生命周期的OnBecameVisible()
和OnBecameInvisible()
,类似于碰撞体检测,可以通过这两个方法来实现对于物体是否在视野内的判断
OnBecameVisibale():
- 当物体进入任何相机的视野内时,触发一次该方法,并且方法是挂载在物体上,与相机无关
OnBecameInvisible():
- 当物体离开任何相机的视野内时,触发一次该方法,并且方法是挂载在物体上,与相机无关
具体实例:
当角色接近某物体并且在视野内时,弹出提示按钮(模拟捡取物体过程):
首先确保物体具