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 /
avatar image
0
Question by lampshade · Feb 15, 2011 at 10:07 AM · gui

GUIDrawTexture Based Crosshairs

don't like GUI crosshairs, so I drew my own using raycasting, see here:

public class CrossHairs : MonoBehaviour {

public GameObject crossHairs;
private void Update() {
Ray myRay = GameObject.FindWithTag("Camera").camera.ScreenPointToRay(new Vector2(Screen.width/2, Input.mousePosition.y));

  RaycastHit myHit = new RaycastHit();      
  if (Physics.Raycast(myRay, out myHit, Mathf.Infinity)) {
      GameObject inst = (GameObject) Instantiate(crossHairs, myHit.point, transform.rotation);
      Destroy(inst, 0.02f);     
      }
  }

The GameObject "crossHairs" is a particle system which is instantiating 1 particle and is using a transparent/cutout/diffuse material (of which is my drawn crosshair).

1 Problem is that it is blinking..and is the top quadrent (I suppose) is covered up by the wall.

So I thought that maybe if I set a boolean as false in start, then to true when the raycast hit something...Then in ONGUI test for if (true). Then use GUI.DrawTexture to draw at a rect?

private void OnGUI() { 
    if (varWeSetWhenRayCastWasTrue) {
        GUI.DrawTexture(new Rect(myHit.point.x, myHit.point.y, 10, 10), myTexture);
    } 
}

I may be confused. What is the best way to a acheive a 'distance' feel to drawn crosshairs?

Comment
Add comment · Show 3
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 StephanK · Feb 15, 2011 at 10:11 AM 1
Share

Sorry, I don't understand the question. Could you clarify what exactly you want to do/know?

avatar image lampshade · Feb 15, 2011 at 12:04 PM 0
Share

I want more of a distance feel to crosshairs. $$anonymous$$ost people think a GUI planted in the center of the screen is the way to go. I disagree. I beleive raycasting is the way, but it comes out blinking for me.

avatar image lampshade · Feb 15, 2011 at 12:07 PM 0
Share

Basically, how do I draw a lazer with raycasting? I guess using a GameObject that instanties 1 particle then immediately destroys it is not how "lazers" are done, i.e. I am not getting the desired effect. How do I create a lazer using raycasting?

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

No one has followed this question yet.

Related Questions

Converting world coordinates to screen coordinates 1 Answer

Non-uniform scale textures in GUI 1 Answer

help with errors 2 Answers

Object disappearing after playing animation. 6 Answers

How to make spaces in between Gui boxes being made in for loops? 1 Answer


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