- Home /
Question about raycasting and UI button
Hello! 
I have a question about raycasting and UI Button. 
What I made was when I raycast a door -> Button enabled -> Click Button -> Door Open 
Everything works great! It wasn't really hard too. 
But all of the sudden, even though I didn't touched everything,the button is not enabled.. 
And soon I found out that raycasting was working. But button is only enabled from like over 4.0f distance. 
When I set the distance to 100.0f or Mathf.Infinite, it pops up and only from far back. When I go near the door, the button is no longer enabled. 
Raycasting is working fine. I checked with debug.drawray. But button is not enabled from under 3.0f distance.. 
Is this a bug? Everything was working fine and all of the sudden goes nut... 
Please help me. I will give you all the information I have. 
Here is my code.
 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class Doors1FL : MonoBehaviour
 {
     public DataController dc;
     
 
     // Start is called before the first frame update
     void Start()
     {
         
     }
 
     // Update is called once per frame
     void Update()
     {
         Ray ray = new Ray();
         ray.origin = dc.FPScam.transform.position;
         ray.direction = dc.FPScam.transform.forward;
         RaycastHit hit;
         if (Physics.Raycast(ray.origin, ray.direction, out hit, 3.0f))
         {
             if (hit.collider.gameObject.name == "EntranceDoor1FL")
             {
                 
                 dc.Interactbut.enabled = true;
                 dc.Interactbut.image.enabled = true;
                 dc.Interactbut.image.sprite = dc.interactimg;
             }
 
             
             else if (hit.collider.gameObject.name == "Room1Door1FL")
             {
                 dc.Interactbut.enabled = true;
                 dc.Interactbut.image.enabled = true;
                 dc.Interactbut.image.sprite = dc.interactimg;
             }
  
 
             else if (hit.collider.gameObject.name == "Room2Door1FL")
             {
                 dc.Interactbut.enabled = true;
                 dc.Interactbut.image.enabled = true;
                 dc.Interactbut.image.sprite = dc.interactimg;
             }
 
             else if (hit.collider.gameObject.name == "BathRoomDoor1FL")
             {
                 dc.Interactbut.enabled = true;
                 dc.Interactbut.image.enabled = true;
                 dc.Interactbut.image.sprite = dc.interactimg;
             }
 
             else
             {
                 dc.Interactbut.enabled = false;
                 
 
             }
         }
        
     }
Your answer
 
 
             Follow this Question
Related Questions
Raycasting is locking to a certain position (is this a bug?) 1 Answer
Grid Based Movement Raycast Issue - Please Help,Raycast Not Working After Roating - Please Help! 0 Answers
UI button and raycast script that I have made both aren't working to change my scene 1 Answer
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                