12

UIがありますButton(を使用UnityEngine.UI)。

ただし、 をクリックすると、シーンをクリックしているようButtonに見えます(私の場合はナビ メッシュをクリックしています)。

この問題を解決するには?

私は典型的な Unity3D コードを使用して、次のようなゲームプレイにユーザーを配置しています。

if (Input.GetMouseButtonDown(0))
  {

アプローチを試しても同じ

if( Input.touches.Length > 0 )
        {

        if ( Input.touches[0].phase == TouchPhase.Began )
            {

iOS、Android、デスクトップでも同様のようです。

UI(UnityEngine.UI.Buttonなど)をクリックするとゲームプレイに失敗するように見えるのは、基本的な問題のようです。

4

3 に答える 3

0

残念ながら、最初の推奨事項は役に立たなかったので、すべてのパネルに「UIPanel」タグを付け、マウスをクリックしたときに現在アクティブなパネルがあるかどうかを確認します

    void Update()
    { if (Input.GetMouseButtonDown(0))
        {
            if (isPanelsOn()) 
            {}//doing nothing because panels is on
            else 
            {} //doing what we need to do
         }
}
public static bool isPanelsOn()
    {
        GameObject[] panels = GameObject.FindGameObjectsWithTag("UIPanel");
        foreach (var panel in panels)
        {
           if (panel.activeSelf)
            {
                return true; 
            }
        }
        return false;
    }
于 2021-03-28T19:28:03.770 に答える