貝塞爾曲線與dotween的簡單使用

2021-10-09 06:40:35 字數 1303 閱讀 5418

效果圖:

場景布局

1.start:開始點(p0)新增lineranderer元件 新增指令碼beziertwo.cs

2.sphere 操作點(p1)

3.end 結束(p3)

4.move 場景中移動小球

bezier_sun.cs指令碼

using system.collections;

using system.collections.generic;

using unityengine;

public class bezier_sun

/ / 三次貝塞爾

/ public static vector3 bezier_3(vector3 p0, vector3 p1, vector3 p2, vector3 p3, float t)

}這個指令碼存放貝塞爾曲線使用的方法

beziertwo.cs指令碼

[serializefield]private linerenderer line;

public transform end;//終點

public transform move;//控制點

public transform spare;//移動物體

bezier_sun beziersun;//貝塞爾曲線指令碼

int i=0;//線條索引值

bool isfind = true;

void start ()

void update ()

/// /// 生成貝塞爾曲線

///

private void bezier_creat()

}/// /// 控制物體沿曲線移動

///

private void bezier_move()

}else if (spare.position == line.getposition(i) && isfind == false)

}spare.domove(line.getposition(i), 0.01f);

}

這個指令碼負責曲線的生成和小球沿曲線移動。思路是利用貝塞爾曲線生成100個點(vector3)修改lineranderer元件中的postions值繪製曲線,然後使用dutween的domove方法移動小球的位置。

參考文章:

貝塞爾曲線

1.概述 貝塞爾曲線 b zier curve 又稱 貝茲曲線或貝濟埃曲線,是應用於二維圖形應用程式的數學曲線。一般的向量圖形 軟體通過它來精確畫出曲線,貝茲曲線由 線段與節點組成,節點是可拖動的支點,線段像可伸縮的皮筋,我們在繪圖工具上看到的鋼筆工具就是來做這種向量曲線的。貝塞爾曲線是計算機圖形學...

貝塞爾曲線

由於工作需要,最近在研究乙個類似qq訊息劃掉的效果 很多強迫症患者童鞋對這個簡直是愛不釋手,當然這個也包括我自己 貝塞爾曲線就是這樣的一條曲線,它是依據四個位置任意的點座標繪製出的一條 光滑曲線 在歷史上,研究貝塞爾曲線的人最初是按照已知曲線 引數方程 來確定四個點的思路設計出這種向量曲線繪製法。貝...

貝塞爾曲線

貝塞爾曲線在android中運用廣泛,可以用來繪製各類複雜曲線,因為貝塞爾曲線只需要指定控制點,就能繪製出特定的曲線。其次是做點和點的平滑過渡。為什麼可以做到如上兩點,看下面的講解 首先來說,貝塞爾曲線有階的概念,這個階可以理解為控制點,一階的控制點只有兩個。如上是一階的方程,其中t取值為0到1,可...