So I’m pretty new to coding in Unity, and sometimes I have a hard time following the scripting reference when there’s only one example. I’m trying to learn how to use ScreenToWorldPoint, but there’s only one example in the scripting reference, and it’s not as helpful as I wish it were. So I was wondering, can anyone give me another (or another couple of) example(s) on how to use ScreenToWorldPoint in C#? Any and all help would be appreciated! :>
An experiment might be the best way to understand this function. Stand at the center of a window and look straight ahead. The amount of the world you can see will depend on the distance from the window. Near the window, you may only see 20’ to either side. In the distance you may see a mountain range spanning 10’s of miles. Now close one eye and touch the window in a place that aligns with an outside object. How far that object is left or right of you will depend on the distance it is from the window.
ScreenToWorldPoint() is like the finger on the window. The ‘Z’ parameter you specify is the distance in front of the camera. It takes a 2D position on the screen (like the position of the finger on the window), and finds what world coordinate position your ‘finger/mouse’ would align with at the specified distance.
As for another example, I posted a script for this question that uses ScreenToWorldPoint():
http://answers.unity3d.com/questions/411419/rotationy-flips-when-turning-around-x-axis.html