事件系统 Raycast 中看不到 Unity 游戏对象

问题描述 投票:0回答:0

我是 unity 的新手,我正在尝试做非常简单的事情。如您所见,在我的场景中,Canvas 对象下只有两个对象。这是我添加了 Ground 和 Deneme 对象的脚本。

Code (CSharp):
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
 
public class Ground : MonoBehaviour, IPointerClickHandler
{
   
    public void OnPointerClick(PointerEventData eventData)
    {
       Debug.Log("Ground clicked");
    }
 
 
    // Start is called before the first frame update
    void Start()
    {
               
    }
 
    // Update is called once per frame
    void Update()
    {
   
       
    }
}

我想在点击地面物体时看到地面被点击。但是它没有看到。当我点击地面时,控制台保持空白。但是当我点击“Deneme”图像对象时,控制台显示“Ground clicked”。

我想知道为什么它对 deneme object 有效而对地面不起作用。所以我查看了 EventSystem。 Raycasty 不只是检测地面物体。它有一个 boxcollider 2d.

那为什么会发生呢?

unity3d
© www.soinside.com 2019 - 2024. All rights reserved.