Vectrosity畫線插件 ??
Unity畫線插件Vectrosity 🔥
在使用Unity進行開發的程序中,我們在某些時候需要使用到劃線功能,使用Unity中的幾種劃線方法自然可行,但是我們可以用一種更方便的方式來進行劃線操作,那就是我們的主角:Vectrosity插件👍!
首先來介紹一下自己👇
Vectrosity:"我叫 Vectrosity😛,是一名Unity開發工程師,我的任務就是負責將老板們的需求盡可能以一種簡單方便的形式給完成,我可以在2d中畫各種形狀的線條,也可以在3d中繪制線條,總的來說,我就是一名Unity中的線潭訓畫師🙉
好了,經過Vectrosity插件的自我介紹之后,我們就大體了解它是用來干嘛的了,接下來就是要說一下怎樣方便快捷的使用Vectrosity插件才進行 2d 或者 3d 的劃線呢??
示例 🎉
下面簡單給大家展示一下小Demo(首先忽略我的畫圖能力 哈哈哈哈嗝~) ,只是插件部分內容,因為功能很多,所以在這里只簡單介紹一下幾個功能,具體想怎樣使用可以自己用插件再深入研究哦


代碼測驗 🎉
**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();
}
}
效果圖🎉:

這樣就是繪制出了一條起點是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();
}
}
效果圖 🎄 :

👂 第一種方法就是先定義了一個GameObjects陣列,在VectorLine()方法中將陣列中物體的位置傳遞過去,然后在兩個物體間進行劃線操作,也可以用貼圖或者改線條顏色,
👂 第二種方法用的不是VectorLine,而是VectorLine.SetLine3D,這個是VectorLine插件中的另一種劃線方法,這里只是簡單的使用了其中的一個劃3d線的方法,
💬 VectorLine 有12種構造,如下圖,其中上面代碼使用的就是最簡單的第二種

通過測驗發現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三個引數的效果:

代碼🎈 :

因為VectorLine中很多種劃線方法,我這里只是介紹了較簡單方便的一種,如果對劃線需求比較大的小伙伴可以使用插件深入研究哦
這是封裝的畫線呼叫介面,一看就超級多

總結 🏠
好了,就介紹到這里了,關于VectorLine插件本篇文章只做了一個簡單的介紹與其中一個較簡單方便的方法,如果想深入研究的小伙伴可自行下載哦,
VectorLine插件下載
下載1積分,可能會漲,積分不夠的私信即可哦
下面再展示一下插件中幾個的示例效果 📀 :




轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/278948.html
標籤:其他
