我试图删除单击鼠标的对象.我正在使用新的Unity3D 4.3进行2D游戏.这是我正在使用的代码
void Update () {
if (Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if(Physics.Raycast(ray,out hit))
{
isHit = false;
Destroy(GameObject.Find(hit.collider.gameObject.name));
}
}
}
Run Code Online (Sandbox Code Playgroud)
控件未进入内部if循环.(isHit未被设置为false).
我有两个用Paddle's渲染SpriteRenderer.他们已经BoxCollider附着在他们身上,他们工作得很好.但是,它们无法使用不同的分辨率正确缩放.所以我转而Image在画布上使用's.它们完美地扩展.但是,我似乎无法BoxCollider正确地使用Paddle's'.我搜索了互联网并找到了一些解决方案,但他们完全错了.根据我所看到的大部分内容,我得出了以下结论:
GetComponent<BoxCollider2D>().size = gameObject.GetComponent<RectTransform>().sizeDelta;
Run Code Online (Sandbox Code Playgroud)
这根本不起作用.
这是我需要的图像,以防它不清楚.
绿色框是该图像中的正确尺寸,但这不是发生的事情,这就是我需要发生的事情.
所以,基本上我需要一种方法来缩放BoxCollider2D到的大小Image的Canvas.
下面是检查人员的图像Paddle和Canvas(注:Paddle有剧本,我就剪下来,因为它没有工作,反正):
还要注意:我需要对撞机的原因是因为我正在检查两个GameObjects,球和桨之间的碰撞.这是乒乓球.