我有一個基於圖塊的遊戲。我把塔作爲瓷磚的子對象。我希望能夠通過光線投射來檢測塔上的鼠標點擊,但不能檢測到瓦片。瓷磚和塔都有2d盒子對撞機。我可以檢測瓷磚上的點擊,但光線投射不會檢測到塔上的點擊。我怎麼解決這個問題。謝謝。Unity:Raycast不會擊中子對象的對撞機
這裏是我的光線投射代碼:
if (Input.GetMouseButtonDown(0))
{
Ray ray = camera.ScreenPointToRay(Input.mousePosition);
ray.origin = camera.transform.position;
RaycastHit2D hit = Physics2D.Raycast(camera.transform.position, -Vector2.up, 50, 8);
if (hit.collider != null && !EventSystem.current.IsPointerOverGameObject())
{
Debug.Log(hit.collider.transform.tag);
//Transform objectHit = hit.transform;
}
}
}
當我掩蓋磚(此處層8)我什麼也沒得到。似乎光線從未擊中塔,雖然塔(如瓷磚)也有2d箱對撞機。
什麼層要檢測點擊子對象的光線投射? – Programmer
它在9 @Programmer層上 –