Unity3D 画线函数(实现和虚线)

1.若只需要在调试场景Scene里查看,不需要在Game运行场景看到,可以使用

Debug.Draw

这个函数一般在Update/Fixed Update/LateUpdate里调用,并且不能设置材质,不过可以指定颜色,例子如下:

void Update()
    {
        Debug.DrawLine (Pos1, Pos2,Color.yellow);
    }

 

2.如需要在游戏运行场景中看到,则需要使用lineRender,这个可以直接在组件栏下直接添加

 

 

其中可以增加材质,在Positions里可以增加点,然后连直线,若需要实时更新直线,则需要添加脚本,在Update函数里面添加点,例子如下:

this.GetComponent().SetPosition(0, transform.position);

transform.position就是你需要时刻改变的点位置。

画直线有很多方法,现在我只是写了两个,若以后使用了其他方法,再来补充。

LineRender画圆的方法详见 https://blog.csdn.net/weixin_42513339/article/details/83210495

 

下面说一下画虚线的方法:

本人还是用了lineRender,主要是自己做一个虚线的材质赋给lineRender。

步骤如下:

1.下载一张只有带虚线的图,背景是透明的,一般为PNG格式,

2.新建一个material,然后材质把最上面的shader改成如下,贴图找到上面的图,然后把这个材质给lineRender即可,其中需要注意的是,画出虚线之后,看到的可能是实线,这里我们就需要条件下面的Tiling和Offset了,我这里调节了Tiling中的X得到了虚线。

 

posted @   多见多闻  阅读(2111)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示