我在Unity3d制作纸牌游戏。我以编程方式使用c#将卡片创建为游戏对象。我想知道如何让每个对象(卡片)在点击鼠标按钮时移动,我尝试使用Raycast对撞器,但它不起作用。我试图访问父类GameObject,它是整个网格的封面,它是碰撞对象/组件,通过它我想访问一个孩子的GameObject(只是移动一个位置)。是否有一个简单的方法来解决这个问题或你有没有更好的方法以其他方式做到这一切?如何在脚本中访问Collider的GameObject?
更新:
if (Input.GetMouseButton (0)) {
RaycastHit hit = new RaycastHit();
Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
if (Physics.Raycast (ray, out hit)) {
print (hit.collider.gameObject.name);
}
}
也许张贴光线投射撞机的代码,您使用的? – 2013-02-13 11:54:39
是的,我用下面的代码,如果(Input.GetMouseButton(0)){ RaycastHit击中=新RaycastHit(); 射线射线= Camera.main.ScreenPointToRay(Input.mousePosition); // **** 如果(Physics.Raycast(射线,出命中)){ 打印(hit.collider.gameObject.name); } } – Ananya 2013-02-13 12:37:57