unity的射线似乎没有检测到物体
我想把这20个点连接起来:中间没有障碍物,则连接上;有障碍物,则不连接
所有的node和obstacle都有rigidbody和collider组件
但有的连接线却穿越了障碍物,目前没有解决问题,求帮助
我的代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
public class CGtest : MonoBehaviour
{
void Start()
{
for (int i = 1; i <= 19; i++)
{
for (int j = i + 1; j <= 20; j++)
{
Ray ray = new Ray(GameObject.Find("node" + i).transform.position, GameObject.Find("node" + j).transform.position);
RaycastHit hit;
Physics.Raycast(ray, out hit, 100);
if (hit.transform == null)
{
Debug.DrawLine(GameObject.Find("node" + i).transform.position, GameObject.Find("node" + j).transform.position, Color.red, 1000);
}
}
}
}
}
射线的构造有问题。第二个参数是方向,而不是终点坐标。