У меня неправильно считывается hit.point(
Элементарный код:
Синтаксис:
Используется csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Weapon : MonoBehaviour {
public float Modifier;
void Start () {
}
void Update () {
Ray2D ray = new Ray2D(transform.position, GameObject.Find("JoystickFireSocle").transform.localPosition);
RaycastHit2D hit = new RaycastHit2D();
if (true)
{
hit = Physics2D.Raycast(ray.origin, ray.direction, 1000f);
Debug.DrawRay(ray.origin, hit.point, Color.white, 10);
Debug.DrawRay(ray.origin, ray.direction * 1000f, Color.red, 10);
// Debug.Log("Ray direction" + ray.direction);
}
}
}
using System.Collections.Generic;
using UnityEngine;
public class Weapon : MonoBehaviour {
public float Modifier;
void Start () {
}
void Update () {
Ray2D ray = new Ray2D(transform.position, GameObject.Find("JoystickFireSocle").transform.localPosition);
RaycastHit2D hit = new RaycastHit2D();
if (true)
{
hit = Physics2D.Raycast(ray.origin, ray.direction, 1000f);
Debug.DrawRay(ray.origin, hit.point, Color.white, 10);
Debug.DrawRay(ray.origin, ray.direction * 1000f, Color.red, 10);
// Debug.Log("Ray direction" + ray.direction);
}
}
}
А вот результат дебага(Обращайте внимание только на белый)
http://uploads.ru/1jA4k.png
http://uploads.ru/f7mFV.png
FireSocle - сосочек джойстика справа)