unity 多个线段的路

做一段路,鼠标在路的附近,可以得到路上的位置。

大致思路,一段路由两头和中间的多个拐点组成,从头连到尾,添加LineRenderer做显示功能,添加EdgeCollider2D做鼠标交互功能。

需要写两个脚本,命名
Way,Pos
Way添加在路的物体上
Pos随便加在哪个物体上

需要在路的物体上添加两个组件
LineRenderer,EdgeCollider2D
在这里插入图片描述
两头,随便找两个物体作为点(图中的白点),并且添加进Way
拐点,直接设为路的子物体
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Way的代码

    public Site SiteA;
    public Site SiteB;

    public List<Vector2> v_Points;
    
	//**连接各点,并且绘制图线和碰撞体
    [ContextMenu("Draw_Way")]
    void Draw_Way()
    {
   
        if (SiteA != null && SiteB != null)
        {
   
            //**  WayPoint
            v_Points = new List<Vector2>();
            v_Points.Add(SiteA.transform.position);
            if (transform.childCount > 0)
            {
   
                for (int i = 0; i < transform.childCount; i++)
                {
   
                    v_Points.Add(transform.GetChild(i).position);
                }
            }
            v_Points.Add(SiteB.transform.position);
            for (int i = 0; i < v_Points.Count; i++)
            {
   
                v_Points[i] = new Vector3(v_Points[i].x, v_Points[i].y, transform
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: UILineRenderer.cs是Unity的一个脚本,用于在Unity中绘制2D线段,该脚本通常用于UI元素,例如在屏幕上绘制HUD元素、指示器、边框等。 该脚本使用的是Unity的UI系统,因此可以直接添加到UI元素上,例如Image或RawImage。它包含以下属性: - Points: 一个Vector2类型的数组,用于指定线段的顶点。 - LineThickness: 线段的宽度。 - Color: 线段的颜色。 除了这些属性之外,该脚本还包含了一些方法,例如AddPoint和RemovePoint,用于在运行时添加或删除线段的顶点。 使用UILineRenderer.cs,你可以轻松地在Unity中创建自定义的线段,例如在UI中绘制进度条、血条等。 ### 回答2: UILineRenderer.cs 是 Unity 中的一个脚本,用于在屏幕上绘制线段。它是 Unity UI 系统中的一部分,可以在 UI 元素上绘制 2D 线条。 使用 UILineRenderer.cs 可以轻松地创建和控制线段的外观和行为。可以根据需要设置线段的起点和终点,在两个点之间绘制一条直线。还可以通过更改线段的宽度、颜色和材质来定制其外观。 UILineRenderer.cs 提供了一些方法和属性来方便地操控线段。其中最主要的方法是 SetPoints,可以通过传入一个 Vector2 数组来设置线段的顶点坐标。此外,还有 SetColor、SetWidth 和 SetMaterial 等方法可以用来设置线段的颜色、宽度和材质。 使用 UILineRenderer.cs 绘制线段的过程非常简单。首先,需要在场景中创建一个空的 GameObject,并添加 UILineRenderer.cs 脚本组件。然后,在脚本中调用相应的方法来设置线段的属性,比如起点、终点、颜色等。最后,将该脚本所在的 GameObject 放置在 UI 元素上,就可以在屏幕上绘制出线段了。 总的来说,UILineRenderer.cs 是 Unity 中一个非常有用的工具,可以方便地在 UI 元素上绘制线段,可以用于实现各种需要线条表达的功能和效果,如画笔工具、连接线等。 ### 回答3: UILineRenderer.cs 是 Unity 引擎中的一个脚本,用于在 Unity UI 中绘制线段。该脚本利用了 Unity 的 GraphicRaycaster 和 RectTransform 来实现线段的绘制。 UILineRenderer.cs 提供了一系列属性和方法,用于控制线段的形状、颜色和宽度。通过设置线段的起点和终点坐标,可以在画布上绘制出直线。同时,也可以通过设置控制点来绘制曲线和多段线。 在绘制线段之前,需要将 UILineRenderer.cs 组件添加到 Canvas 对象上。在脚本中,需要将起点、终点、控制点等信息传递给 UILineRenderer,并通过调用其 DrawLine() 方法来实现线段的绘制。 UILineRenderer.cs 利用 Unity 的 GraphicRaycaster 来实现线段的交互功能。我们可以通过代码设置触发事件,如点击或拖拽线段。同时,UILineRenderer.cs 也支持对线段进行颜色、宽度等属性的设置,使其更加美观和有趣。 总的来说,UILineRenderer.cs 是一个在 Unity UI 中绘制线段的实用脚本。通过使用该脚本,我们可以方便地在 Unity UI 中绘制直线、曲线和多段线,同时也可以实现线段与用户交互的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值