| 
UID47积分471帖子37主题7论坛币2221 威望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是用來置中對齊用的复制代码{\an5\pos(!x0-j!,!y0-j*j/4!)}●
然後下面放一行空字幕 就可以畫出方程式了
 很簡單吧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去畫圖 經調整過後得到
 然後用上面的原理算出格子數 也就是loop總數复制代码m 92 0 l 0 92 l 92 184 l 184 92
8*4 = 32
 另外再設變數作微調
 x0 y0 為第1組座標之微調
 調好之後第1組的腳本如下
 code oncetemplate pre-line loop 32
 以上就可以做出類似的格子~如果你要讓格子轉動可以加上\t(0,200,\fry180)試試看复制代码{\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
動畫的部分等下一次再說吧
 | 
 
5
查看全部评分
 |