如果想用unity制作一个fps游戏 用官方给的那个fpsController第一人称视角制作。
子弹发射的方法用射线检测 用ui层的中心点做准星 然后从摄像机发射一条射线
ray = Camera.main.ScreenPointToRay(new Vector3(Screen.width / 2, Screen.height / 2, 0));
子弹以射线方向发射实现准星指哪打哪,但是问题是这样子弹就必须从摄像机的位置打出,会很假,如果想要从fpsController下面绑定的枪的模型上打出就无法保证子弹
会打在准星的位置上。
求告知 如何解决这个问题!!!!让子弹看上去是从枪口发射,又会打在ui层准星所在的位置
你可以试一下用两个摄像机,其中一个绑定在枪的模型上,射线从这里发出到达准星点,,,另一个摄像机正常使用就行了。
你看官方的方法, 可以这么来 创建一个空物体 移动到枪口处 并且设置为枪的子物体 命名为发射点 怎么起看你喜好了
然后 利用相机发射一条射线 检测到三维空间里的目标点
利用这个目标点和枪口发射点做差
然后剩下的就是怎么沿着这条线发射了