我正在尝试为Android统一制作fps游戏,并通过手机的陀螺仪使枪支旋转,但击中点和十字准线仍聚焦在屏幕中央。我想使十字准线跟随枪的方向。那怎么可能?
答案 0 :(得分:0)
首先对不起我的英语! 其次,我不愿描述自己想做的更好的事情! 正如我在一开始所说的那样,我通过智能手机陀螺仪使步枪旋转!因为随着步枪的旋转和步枪的枪管的旋转,在现实世界中,每次用户旋转智能手机时,子弹都应该移到不同的位置。即使是播放器摄像机的旋转也保持不变。因此,我希望每次用户旋转步枪并指向子弹将要到达的正确位置时,使子弹到达正确的位置并使十字准线移动。
答案 1 :(得分:0)
首先,对不起,如果我的回答是在您的了解范围内,但我认为这种方式可行。
您可以使用从枪管向前移动的RayCast,获取击中点并将其转换为屏幕坐标...然后将十字准线移动到在屏幕坐标中转换的子弹碰撞点。
您可以在此处找到Raycast的实现细节: https://docs.unity3d.com/ScriptReference/Physics.Raycast.html
,此处为WorldToScreenConvertion: https://docs.unity3d.com/ScriptReference/Camera.WorldToScreenPoint.html