Raycast2DでuGUIを取得する方法
positionの扱いに注意。uGUIでないオブジェクト(Sprite等)はworld座標に直す必要があるが、RectTransformの場合は必要ない。
var dropPosition = eventData.position; if (Camera.main == null) return; // _layerはなくてもいい var hit = Physics2D.Raycast(dropPosition, Vector2.zero, Mathf.Infinity, _layer); if (hit.collider == null) return; var isHit = hit.collider.TryGetComponent(out SomeUGUIClass someUGUIClass); if (!isHit) return; // その後の処理