首页 > 代码库 > Unity3D判断不规则范围内是否存在一点

Unity3D判断不规则范围内是否存在一点

//该方法的前提,不规则的范围已经用Collider2D给画出来了

  //举个栗子:判断是否点击了某个不规则的游戏对象

 

   LayerMask SomeLayer = LayerMask.GetMask("layer名");

  //这个SomeLayer是重点,这里表示游戏对象所在layer,一般要事先命名一个layer层,把游戏对象的layer层设为该层

  if(InPut.GetMouseButtonDown(0)) {

  Vector mousePoint = Camera.Main.ScreenToWorldPoint(InPut.mousePosition);

  Collider2D collider = Physics2D.OverlapPoint(mousePoint,SomeLayer){

    if(collider != null){

      Debug.Log("点击了");  //点击的对象 collider.gameObject

    }

  }

}

 

  

   

Unity3D判断不规则范围内是否存在一点