- UID
- 47
- 积分
- 471
- 帖子
- 37
- 主题
- 7
- 论坛币
- 2219
- 威望
- 1
- EP值
- 540
- MP值
- 23
- 阅读权限
- 50
- 注册时间
- 2011-8-10
- 在线时间
- 38 小时
- 最后登录
- 2015-11-19
|
本帖最后由 影kage 于 2014-10-7 15:18 编辑
之前發的文章
轉自 http://dhrsub.net/thread-6791-1-1.html
這一次簡單說明template pre-line的使用方法~如字面上所說template pre-line只是在每行字幕前面加上標籤
大部分都是拿來上\fad或\blur用的
因此無法用在製作卡拉OK特效(廢話)
不過對於製作圖片、影片濾鏡蠻好用的等等
1.使用template pre-line畫方程式
這東西原理不難,如我的簽名檔所示
首先先定義原點X0,Y0
假設原點是 640,360所以先設個變數
code once複製代碼
利用\pos畫出方程式
假設你要畫的圖為 y=(1/4)X^2
(正方向)
template pre-line loop 640- {\an5\pos(!x0+j!,!y0+j*j/4!)}●
复制代码 (負方向)
template pre-line loop 640- {\an5\pos(!x0-j!,!y0-j*j/4!)}●
复制代码 這邊的an5是用來置中對齊用的
然後下面放一行空字幕 就可以畫出方程式了
很簡單吧w
2.畫定位點
其實原理很簡單 你只要知道會算定位點的位置就會畫了
例如把 1280*720的畫面上面畫上 159*89的定位點
畫法如下
先算出點的個數 160*90=14151 這代表要loop14151次
在算出每個點的間距
1280/(159+1) = 8
720/(89+1) = 8
使用pos 一軸取餘數 一軸用除法然後使用math.floor取到整數
所以
(由左向右排)
template pre-line loop 14151- {\an5\pos(!(j-1)%159*8+8!,!math.floor((j-1)/159)*8+8!)}●
复制代码 複製代碼
(由上往下排)
template pre-line loop 14151- {\an5\pos(!math.floor((j-1)/89)*8+8!,!(j-1)%89*8+8!)}●
复制代码 複製代碼
上面兩種方法皆可
然後下面放一行空字幕 就可以畫出方程式了
(這邊的空字幕放一行就好,放太多行放到電腦當掉自行負責)
圖片之後再補上去
延伸課題:三坪房間侵略者ED馬賽克效果再現
在三坪房間侵略者ED是用8*4的格子(x軸方向兩堆端的格子方向各切一半)另一組則是7*5上下各被切一半
因為開頭只有第1組的那些格子在轉動 所以後面的就不考慮了
因此先算出格子大小來畫圖 先算出對角線長度
1280/7 ≒ 182
720/4 = 180
總長加起來會超過畫面所以就大概取184 到時候再對齊
首先到AssDraw去畫圖 經調整過後得到- m 92 0 l 0 92 l 92 184 l 184 92
复制代码 然後用上面的原理算出格子數 也就是loop總數
8*4 = 32
另外再設變數作微調
x0 y0 為第1組座標之微調
調好之後第1組的腳本如下
code oncetemplate pre-line loop 32- {\an5\pos(!(j-1)%8*184+x0!,!math.floor((j-1)/8)*184+y0!)\p1}m 92 0 l 0 92 l 92 184 l 184 92
复制代码 以上就可以做出類似的格子~如果你要讓格子轉動可以加上\t(0,200,\fry180)試試看
動畫的部分等下一次再說吧 |
-
5
查看全部评分
-
|