Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
This question was closed Apr 14, 2013 at 07:14 AM by Fattie for the following reason:

Duplicate Question

avatar image
0
Question by SpeedTutor · Apr 14, 2013 at 07:04 AM · guiraycastlabel

GUI label on raycast?

Hello,

I found this script for raycasting to see if the player is within a certain distance from an object (essentially a door) but want to add a GUI label popup to prompt the player when wanting to open the door. I'm not sure what I should use for the 'if' statement to check whether it's within range.

 using UnityEngine;
 using System.Collections;
 
 public class New_Level_Door : MonoBehaviour {
 
 void Update()
 {
   if(Input.GetKeyDown(KeyCode.E) && CheckForDoor())
     {
     Application.LoadLevel("MainMenu");
     }
 }
     
 bool CheckForDoor()
 {
 RaycastHit hit;
 if(Physics.Raycast(transform.position, transform.forward, out hit, 2))
     {
     Debug.LogWarning("Press E to open the door");
     if(hit.transform.tag == "LevelEnd")
     {                
   return true;
    }
  }
   return false;
 }
 
 void OnGUI()
 {
         //if(RaycastHit hit = true))
         {
         GUI.Label (new Rect(5,0,100,20 ),"Press 'E' to open the door!");
         }
     }
 }

Thanks for your time!

Comment
Add comment · Show 2
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Fattie · Apr 14, 2013 at 07:14 AM 1
Share

look at the doc for GUILabel. Search on here for 100s quetions about GUI and GUILabel

avatar image apfelstrudl · Jun 02, 2013 at 03:58 PM 0
Share

Hello there! I tried something out with raycast, and I found a valid solution that worked for me! It may be a little late for this answer, but I hope it can serve you, like it served me! I have a script wich scans object's tags, so it will only print out a specific tag when it hits a scanned object! Here's the code:

 void OnGUI() 
 {
     Ray ray =    Camera.mainCamera.ScreenPointToRay(Input.mousePosition);
     Debug.DrawRay(ray.origin, ray.direction * range, Color.cyan);
     RaycastHit hit;
     
     
 if(Physics.Raycast(ray, out hit) == true && hit.distance <= range)
     {
         Debug.DrawRay(ray.origin, ray.direction * hit.distance, Color.red);
         Debug.Log ("Hitting a " + hit.transform.gameObject.tag);
         GUI.Label(new Rect(10, 10, 100, 20), "" + hit.transform.gameObject.tag);
         }
 }

Now what this will do is that it will print the name of the tag on the object and print it somewhere on the screen! I'm unsure if this is what you wanted, but this worked fine for me! You may have to modify the text's coordinates and put a few if statements, depending on what door is opening. Good luck mate! I hope I helped! :)

0 Replies

  • Sort: 

Follow this Question

Answers Answers and Comments

12 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Multiplayer game GUI problem 0 Answers

GUI.button and onClick Terrain 2 Answers

script is not working Using raycast show PopUp on click 0 Answers

Score display not working 1 Answer

How to change how meany decimals are in a GUI sound slider 2 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges