■下記ページを参照しました、めっちゃ助かりました。
http://denshikousaku.net/unity-memo-4
■return results.Count > 0の部分はいろいろ検討の余地あり、
テクスチャーが裏に1枚入れば、
それだけでカウントは1になる。
/// <summary>
/// タップ位置にオブジェクトが存在するか?
/// </summary>
/// <returns></returns>
private bool IsPointerOverUIObject()
{
PointerEventData eventDataCurrentPosition = new PointerEventData(EventSystem.current);
eventDataCurrentPosition.position = new Vector2(Input.mousePosition.x, Input.mousePosition.y);
List<RaycastResult> results = new List<RaycastResult>();
EventSystem.current.RaycastAll(eventDataCurrentPosition, results);
return results.Count > 0;
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
if (!IsPointerOverUIObject())
{
// タップ位置に何も存在しない
}
}
}