ScreenToWorldPoint
How do I use Screen To World Point
Below are practical examples compiled from projects for learning and reference purposes
Featured Snippets
Line | Code | Ex.. |
---|---|---|
62 | realPos = Camera.main.ScreenToWorldPoint (new Vector3(position.x, position.y ,position.z)); | 1 |
67 | touchPos = Camera.main.ScreenToWorldPoint (touch.position); | 2 |
File name: PlayerController.cs
Copy
55 void TouchMovement(){
56 if(Input.touchCount > 0){
57 Touch touch = Input.GetTouch (0);
58
59 if(touch.phase == TouchPhase.Stationary || touch.phase == TouchPhase.Began){
60 Vector3 fingerPos = touch.position;
61 position.x = fingerPos.x;
62 realPos = Camera.main.ScreenToWorldPoint (new Vector3(position.x, position.y ,position.z));
63 transform.position = Vector3.Lerp (transform.position, new Vector3(Mathf.Clamp(realPos.x, maxLeft + 0.5f, maxRight - 0.5f), transform.position.y, transform.position.z), Time.deltaTime * speed);
64
65 }
66
67 if (touch.phase == TouchPhase.Moved) {
68 Vector3 fingerPos = touch.position;
69 position.x = fingerPos.x;
70 realPos = Camera.main.ScreenToWorldPoint (new Vector3(position.x, position.y ,position.z));
71 transform.position = Vector3.Lerp (transform.position, new Vector3(Mathf.Clamp(realPos.x, maxLeft + 0.5f, maxRight - 0.5f), transform.position.y, transform.position.z), speed);
72 }
73
74 }
75 }
File name: Cannon.cs
Copy
63 void TouchCannonShoot(){
64 if(Input.touchCount > 0){
65 Touch touch = Input.GetTouch (0);
66
67 touchPos = Camera.main.ScreenToWorldPoint (touch.position);
68
69 Vector2 touchRayHit = new Vector2 (touchPos.x, touchPos.y);
70
71 RaycastHit2D hit = Physics2D.Raycast (touchRayHit , Vector2.zero);
72
73 if(hit.collider != null){
74 if(hit.collider.CompareTag("Player")){
75 if(touch.phase == TouchPhase.Stationary){
76 if (shot != 0) {
77 UpdatePowerLevel ();
78 isCharging = true;
79 }
80 }else if(touch.phase == TouchPhase.Ended){
81 if (shot != 0) {
82 GameObject newCannonBullet = Instantiate (cannonBullet, cannonTip.position, Quaternion.identity) as GameObject;
83 newCannonBullet.transform.GetComponent
84 if (GameController.instance != null && MusicController.instance != null) {
85 if (GameController.instance.isMusicOn) {
86 audioSource.PlayOneShot (cannonShot);
87 }
88 }
89 shot--;
90 powerLevel.value = 0;
91 readyToShoot = false;
92 isCharging = false;
93 }
94 }
95 }
96 }
97
98 /*if(touch.phase == TouchPhase.Stationary){
99 if (shot != 0) {
100 UpdatePowerLevel ();
101 }
102 }else if(touch.phase == TouchPhase.Ended){
103 if (shot != 0) {
104 GameObject newCannonBullet = Instantiate (cannonBullet, cannonTip.position, Quaternion.identity) as GameObject;
105 newCannonBullet.transform.GetComponent
106 if (GameController.instance != null && MusicController.instance != null) {
107 if (GameController.instance.isMusicOn) {
108 audioSource.PlayOneShot (cannonShot);
109 }
110 }
111 shot--;
112 powerLevel.value = 0;
113 readyToShoot = false;
114 }
115 }*/
116
117 }
118 }
ScreenToWorldPoint 236 lượt xem
Gõ tìm kiếm nhanh...