unityでスマホ向けのシューティングゲームを作っているのですが照準(image)の子に"rayを真っ直ぐ飛ばすもの"を付けただけなので、真っ直ぐにしかrayが飛ばず、照準はあっているのにrayはあたらないので、あたるようにする方法が知りたいです。
![
試したこと
照準(image)の位置(canvas上)に応じて角度をつけるようにしたが、精度が良くなかった。
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.UI; 5 6public class Kaiten : MonoBehaviour 7{ 8 [SerializeField] GameObject obj; 9 [SerializeField] GameObject objK; 10 11 // Start is called before the first frame update 12 void Start() 13 { 14 15 } 16 17 // Update is called once per frame 18 void Update() 19 { 20 Vector3 pos = obj.GetComponent<RectTransform>().anchoredPosition; 21 obj.GetComponent<RectTransform>().anchoredPosition = pos; 22 float Y = pos.x * 0.095833f + 64f * 0.095833f; 23 float X = pos.y * -0.111111f + 74f * -0.111111f; 24 objK.GetComponent<RectTransform>().localRotation = Quaternion.Euler(X, Y, 0); 25 26 27 } 28} 29
64,74はタップ場所と照準とのずれを治すためのもので、少数のは位置を角度にするためのです。
自分でも上手く書けている自信がないので、分からなかったら質問してください!
回答1件
あなたの回答
tips
プレビュー