我在网上搜索了这个,但我仍然没有找到我想要的答案。
所以,我有一个 2d 平铺游戏,每个平铺位置都是 1.25 的倍数,例如 7.5、3.75。将有一个玩家在它上面行走,我想通过拖动它来控制玩家,如果你释放触摸它会完美地在一个瓷砖上而不是在瓷砖之间。现在,我什至不知道如何通过触摸拖动游戏对象。任何人都可以帮助我并向我解释如何做到这一点吗?
最佳答案
您需要为您计划移动的每个对象设置碰撞器。然后创建一个类,其唯一目的是触发 Raycast .检测何时发生触摸。然后启动 Raycast。
RaycastHit hit;
if(Physics.Raycast(ray, out hit, 100))
Debug.DrawLine(ray.origin, hit.point);
您会注意到您点击
;有了它,您可以向该特定对象发送消息。
hit.collider.SendMessage("move");
在您点击的对象内部,您现在必须使用触摸位置的坐标来更新 transform.position
。
关于ios - 如何使用触摸拖动游戏对象(unity2d),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26728810/