c# - RaycastHit issues with canvas? -


this script gives message on console if hit gameobject not in canvas. when mouse button released on button located inside canvas, script doesn't debug anything. how can fix this?

raycasthit hit;  void update ()  {     if(input.getmousebuttonup(0))     {         ray ray = camera.main.screenpointtoray(input.mouseposition);         //rayhit hit;         if(physics.raycast(ray, out hit))         {             // want             debug.log(hit.collider.gameobject.tag);         }     } } 

you can use ui object clicked.

    if (input.getmousebuttondown(0))     {         ray ray = camera.main.screenpointtoray(input.mouseposition);           if (eventsystem.current.ispointerovergameobject())         {             debug.log(eventsystem.current.currentselectedgameobject.getcomponent<text>().name);          } 

eventsystem.current.currentselectedgameobject.getcomponent().name

will return clicked object ,

eventsystem.current.ispointerovergameobject()

will check if ui object click or not.


Comments

Popular posts from this blog

matlab - error with cyclic autocorrelation function -

django - (fields.E300) Field defines a relation with model 'AbstractEmailUser' which is either not installed, or is abstract -

c# - What is a good .Net RefEdit control to use with ExcelDna? -