Unity零基础到进阶 ✨ 使用 Vectrosity 插件 像德芙一样丝滑的画线

简介: Vectrosity画线插件 ☀️Unity画线插件Vectrosity 🔥在使用Unity进行开发的过程中,我们在某些时候需要使用到划线功能,使用Unity中的几种划线方法自然可行,但是我们可以用一种更方便的方式来进行划线操作,那就是我们的主角:Vectrosity插件👍!

Vectrosity画线插件 ☀️

Unity画线插件Vectrosity 🔥


在使用Unity进行开发的过程中,我们在某些时候需要使用到划线功能,使用Unity中的几种划线方法自然可行,但是我们可以用一种更方便的方式来进行划线操作,那就是我们的主角:Vectrosity插件👍!


首先来介绍一下自己👇


Vectrosity:"我叫 Vectrosity😛,是一名Unity开发工程师,我的任务就是负责将老板们的需求尽可能以一种简单方便的形式给完成。我可以在2d中画各种形状的线条,也可以在3d中绘制线条。总的来说,我就是一名Unity中的线条绘画师🙉


好了,经过Vectrosity插件的自我介绍之后,我们就大体了解它是用来干嘛的了,接下来就是要说一下怎样方便快捷的使用Vectrosity插件才进行 2d 或者 3d 的划线呢⚡️


示例 🎉

下面简单给大家展示一下小Demo(首先忽略我的画图能力 哈哈哈哈嗝~) ,只是插件部分内容,因为功能很多,所以在这里只简单介绍一下几个功能,具体想怎样使用可以自己用插件再深入研究哦

1.gif

1.gif

代码测试 🎉

**2d 🔔 **

绘制2d线条,导入插件后,创建脚本

导入命名空间:using Vectrosity;

C#:

public class line : MonoBehaviour {
    void Start()
    {
        // 定义一个 VectorLine 对象,名字是“Line” 使用linePoints数组内的点, 并且使用默认材质, 线的宽度是10像素
        var linePoints = new List<Vector2>() { new Vector2(200, 100), new Vector2(200, 300) };
        VectorLine line = new VectorLine("Line", linePoints, 10);
        line.Draw();
    }
}

效果图🎉:

image.png

这样就是绘制出了一条起点是Vector2(200, 100),终点是Vector2(200, 300) 的线条,其中这个坐标系是画布的左下角为(0,0)


3d 🎅

绘制3d线条的方法也有很多,在这里就演示两种,使用的话再深入研究吧。

导入插件后,创建脚本

导入命名空间:using Vectrosity;

C#:

public class line : MonoBehaviour {
    public GameObject[] points;
    public GameObject[] points2;
    private Vector3[] lineList2;
    private VectorLine line2;
    void Start()
    {
        OnDraw3D();
        t3d();
    }
    /// <summary>
    /// 1.3d物体间的划线
    /// </summary>
    private void OnDraw3D()
    {
        List<Vector3> lineList1 = new List<Vector3>() { points[0].transform.position, points[1].transform.position };
        VectorLine line1 = new VectorLine("line1", lineList1, 10f);
        line1.Draw3DAuto();
    }
    /// <summary>
    /// 2.3d物体间的划线
    /// </summary>
    void t3d()
    {
        lineList2 = new Vector3[] { points2[0].transform.position, points2[1].transform.position };
        line2 = VectorLine.SetLine3D(Color.black, 50f, lineList2);
        line2.Draw3DAuto();
    }
}

效果图 🎄 :

image.png

👂 第一种方法就是先定义了一个GameObjects数组,在VectorLine()方法中将数组中物体的位置传递过去,然后在两个物体间进行划线操作,也可以用贴图或者改线条颜色。


👂 第二种方法用的不是VectorLine,而是VectorLine.SetLine3D,这个是VectorLine插件中的另一种划线方法,这里只是简单的使用了其中的一个划3d线的方法。


💬 VectorLine 有12种构造,如下图。其中上面代码使用的就是最简单的第二种


image.png

通过测试发现VectorLine()方法里的参数分别是

VectorLine(string name, List<Vector2> points, Texture texture, float width, LineType lineType, Joins joins);

string 为绘制出的线条名称

List points为2d或3d的坐标List

Texture texture为绘制线条的贴图

float width为线条的粗细

LineType是个枚举,我测试发现用三个参数绘制出的图形并无明显变化…

    public enum LineType
    {
        Continuous = 0,
        Discrete = 1,
        Points = 2
    }

Joins 也是一个枚举,测试发现用三个参数绘制出的图形也并无明显变化…

    public enum Joins
    {
        Fill = 0,
        Weld = 1,
        None = 2
    }

上图给大家看一下设置Joins三个参数的效果:

image.png

代码🎈 :

image.png


因为VectorLine中很多种划线方法,我这里只是介绍了较简单方便的一种,如果对划线需求比较大的小伙伴可以使用插件深入研究哦

这是封装的画线调用接口,一看就超级多

1.gif


总结 🏠

好了,就介绍到这里了,关于VectorLine插件本篇文章只做了一个简单的介绍与其中一个较简单方便的方法,如果想深入研究的小伙伴可自行下载哦,


VectorLine插件下载

下载1积分,可能会涨,积分不够的私信即可哦


下面再展示一下插件中几个的示例效果 📀 :

1.gif

1.gif

1.gif

1.gif




相关文章
|
3月前
|
传感器 开发工具 vr&ar
ManoMotion⭐二、Unity手势识别插件简介,及效果录屏
ManoMotion⭐二、Unity手势识别插件简介,及效果录屏
|
2月前
|
图形学 C++ C#
Unity插件开发全攻略:从零起步教你用C++扩展游戏功能,解锁Unity新玩法的详细步骤与实战技巧大公开
【8月更文挑战第31天】Unity 是一款功能强大的游戏开发引擎,支持多平台发布并拥有丰富的插件生态系统。本文介绍 Unity 插件开发基础,帮助读者从零开始编写自定义插件以扩展其功能。插件通常用 C++ 编写,通过 Mono C# 运行时调用,需在不同平台上编译。文中详细讲解了开发环境搭建、简单插件编写及在 Unity 中调用的方法,包括创建 C# 封装脚本和处理跨平台问题,助力开发者提升游戏开发效率。
200 0
|
5月前
|
图形学
【推荐100个unity插件之9】分享几个完全免费的2D角色动画生成器(推荐收藏)
【推荐100个unity插件之9】分享几个完全免费的2D角色动画生成器(推荐收藏)
282 0
|
5月前
|
数据可视化 大数据 API
【推荐100个unity插件之22】基于UGUI的功能强大的简单易用的Unity数据可视化图表插件——XCharts3.0插件的使用
【推荐100个unity插件之22】基于UGUI的功能强大的简单易用的Unity数据可视化图表插件——XCharts3.0插件的使用
184 0
|
5月前
|
自然语言处理 搜索推荐 API
【推荐100个unity插件之21】unity实现多语言切换功能——Localization插件的使用
【推荐100个unity插件之21】unity实现多语言切换功能——Localization插件的使用
186 0
|
5月前
|
JSON 开发框架 API
【推荐100个unity插件之20】一个强大的JSON处理库——Newtonsoft.Json(也称为Json.NET)
【推荐100个unity插件之20】一个强大的JSON处理库——Newtonsoft.Json(也称为Json.NET)
424 0
|
5月前
|
图形学
【推荐100个unity插件之19】武器拖尾特效插件——Pocket RPG Weapon Trails(2d 3d通用)
【推荐100个unity插件之19】武器拖尾特效插件——Pocket RPG Weapon Trails(2d 3d通用)
99 0
|
5月前
|
数据可视化 C# 图形学
【推荐100个unity插件之18】Unity 新版输入系统Input System的基础使用
【推荐100个unity插件之18】Unity 新版输入系统Input System的基础使用
145 0
|
5月前
|
图形学
【推荐100个unity插件之17】具有可破坏/砍倒unity地形树木能力的破坏系统,实现unity砍树效果 —— DestroyIt - Destruction System
【推荐100个unity插件之17】具有可破坏/砍倒unity地形树木能力的破坏系统,实现unity砍树效果 —— DestroyIt - Destruction System
140 0
|
5月前
|
vr&ar 图形学
【推荐100个unity插件之16】3D物品描边效果——Quick Outline免费插件
【推荐100个unity插件之16】3D物品描边效果——Quick Outline免费插件
204 0