TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua

 找回密码
 新人加入
查看: 17216|回复: 34
打印 上一主题 下一主题

[已解决] 求助这两个特效如何组合0.0 [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 2012-9-12 20:22:05 |显示全部楼层 |倒序浏览
呜咕。。偶想的特效是这样的:在K值里一个字一个字从右边移动到你设定的地方。。可是偶弄出了移动的特效。。还有遮罩。。可是两个组合起来就没特效了怎么回事呀?
呜咕。。这个是移动特效的代码
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD                              # frame duration, in millisecond
  4.     global _Fs
  5.     global _Blur
  6.     global COLOR
  7.     _FD = 1000 / GetVal(val_FXFPS)
  8.     _Fs = GetVal(val_FontSize)
  9.     _Blur = GetVal(val_Blur)
  10.     COLOR = DivClr(GetVal(val_1C), GetVal(val_2C), _Fs)

  11. def tcaxPy_Fin():
  12.     pass


  13. time_gap = 1    # you can change this value to 0, or 2 or any other number
  14. time_fac = 1    # you can change this value to 0, or 2 or any other number

  15. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
  16.     ASS_BUF  = []        # used for saving ASS FX lines
  17.     TCAS_BUF = []        # used for saving TCAS FX raw data

  18.     duration = 10 * _FD
  19.     ts = _start + _elapk                                   # start time, in semi-second
  20.     te = _start + _elapk + _k
  21.     EFT =  move(_x + 200, _y , _x, _y)
  22.     ass_main(ASS_BUF, SubL(ts, te), EFT, _txt)

  23.     return (ASS_BUF, TCAS_BUF)
复制代码
呜咕。。这个是遮罩:
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD                         # frame duration, in millisecond
  4.     global _Fs
  5.     global _Blur
  6.     global COLOR
  7.     _FD = 1000 / GetVal(val_FXFPS)
  8.     _Fs = GetVal(val_FontSize)
  9.     _Blur = GetVal(val_Blur)
  10.     COLOR = DivClr(GetVal(val_1C), GetVal(val_2C), _Fs)


  11. def tcaxPy_Fin():
  12.     pass


  13. time_gap = 1    # you can change this value to 0, or 2 or any other number
  14. time_fac = 1    # you can change this value to 0, or 2 or any other number

  15. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
  16.     ASS_BUF  = []        # used for saving ASS FX lines
  17.     TCAS_BUF = []        # used for saving TCAS FX raw data

  18.     ts = _start + _elapk
  19.     te = _end - (_n - _j - 1) * time_fac * _FD / 10 + time_gap * _FD / 10
  20.     y1 = _y - _a / 2
  21.     y2 = _y + _a / 2
  22.     for i in range(_Fs):
  23.         x1 = _x - _Fs / 2 + i
  24.         x2 = x1 + 1
  25.         EFT = pos(_x, _y) + clip(x1, y1, x2, y2) + color1(COLOR[i]) + alpha3(255)
  26.         if _Blur > 0:
  27.             EFT += blur(_Blur)
  28.         ass_main(ASS_BUF, SubL(ts + i * _k / _Fs, te, 10), EFT, _txt)

  29.     return (ASS_BUF, TCAS_BUF)
复制代码
啊呜。。这个就是偶将它们组合的可是显示无特效:
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD                         # frame duration, in millisecond
  4.     global _Fs
  5.     global _Blur
  6.     global COLOR
  7.     _FD = 1000 / GetVal(val_FXFPS)
  8.     _Fs = GetVal(val_FontSize)
  9.     _Blur = GetVal(val_Blur)
  10.     COLOR = DivClr(GetVal(val_1C), GetVal(val_2C), _Fs)


  11. def tcaxPy_Fin():
  12.     pass


  13. time_gap = 1    # you can change this value to 0, or 2 or any other number
  14. time_fac = 1    # you can change this value to 0, or 2 or any other number

  15. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
  16.     ASS_BUF  = []        # used for saving ASS FX lines
  17.     TCAS_BUF = []        # used for saving TCAS FX raw data

  18.     ts = _start + _elapk
  19.     te = _end - (_n - _j - 1) * time_fac * _FD / 10 + time_gap * _FD / 10
  20.     y1 = _y - _a / 2
  21.     y2 = _y + _a / 2
  22.     for i in range(_Fs):
  23.         x1 = _x - _Fs / 2 + i
  24.         x2 = x1 + 1
  25.         EFT = clip(x1, y1, x2, y2) + color1(COLOR[i]) + alpha3(255) + move(_x + 100, _y , _x, _y)
  26.         if _Blur > 0:
  27.             EFT += blur(_Blur)
  28.         ass_main(ASS_BUF, SubL(ts + i * _k / _Fs, te, 10), EFT, _txt)

  29.     return (ASS_BUF, TCAS_BUF)
复制代码
啊呜。。。为什么呢(T.T)。。还有就是。。TCAX可以使用jitter这个抖动特效吗?

Rank: 4

沙发
发表于 2012-9-12 20:23:30 |显示全部楼层
呜咕。。这个笨蛋又来问问题了(T.T)

Rank: 4

板凳
发表于 2012-9-12 20:55:16 |显示全部楼层
渣渣疯子 发表于 2012-9-12 20:51
clip和move是无法组合的。。。clip想移动的话,考虑用t吧

啊呜。。这样吗:EFT = clip(x1, y1, x2, y2) + color1(COLOR) + alpha3(255) + t(0, 10 * _k, clip(x1 + 100, y1, x2, y2))

Rank: 4

地板
发表于 2012-9-12 21:09:13 |显示全部楼层
渣渣疯子 发表于 2012-9-12 21:07
四个坐标点都要修改的吧。。。不知道你有没有去下过内置脚本http://www.tcax.org/forum. ...

呜咕。。好偶去看看。。到现在一直是研究TCAX自带的内置0.0。。没下过新的

Rank: 4

5#
发表于 2012-9-12 21:57:14 |显示全部楼层
渣渣疯子 发表于 2012-9-12 21:12
新的内置也有不少不错的效果,不过需要论坛币购买

嘎哦。。V。。偶现在有多少就买多少吧(T.T)

Rank: 4

6#
发表于 2012-9-13 13:04:00 |显示全部楼层
渣渣疯子 发表于 2012-9-12 21:12
新的内置也有不少不错的效果,不过需要论坛币购买

呜咕。。那个特效偶试了该一下。。遮罩偶做出来。。可是字幕从右边移动到指定的位置了。可是K值效果结束也就没了(T.T)。。遮罩没做好?
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD                         # frame duration, in millisecond
  4.     global _Blur
  5.     global _Fs
  6.     _Fs = GetVal(val_FontSize)
  7.     _FD = 1000 / GetVal(val_FXFPS)
  8.     _Blur = GetVal(val_Blur)


  9. def tcaxPy_Fin():
  10.     pass


  11. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
  12.     ASS_BUF  = []        # used for saving ASS FX lines
  13.     TCAS_BUF = []        # used for saving TCAS FX raw data

  14.     _7X = _x - int(_a / 2 + 0.5)
  15.     _7Y = _y - int(_Fs / 2 + 0.5)

  16.     ts = _start + _elapk                                   # start time, in semi-second
  17.     te = _end - (_n - _j - 1)  * _FD / 10  * _FD / 10  
  18.     for i in range(0,_a,3):
  19.         for j in range(0,_Fs,3):
  20.             COLOR=[ "696AFF", "FF9C69","69EBFF","A5BDED","C9F2DC" ]
  21.             COLOR1=color1(COLOR[randint(0,4)])
  22.             R = randint(-10,10)
  23.             Xx1 = 50
  24.             MOVE1 = move(_x+Xx1,_y,_x,_y)
  25.             CLIP1 = clip(_7X+i+Xx1,_7Y+j,_7X+i+1+Xx1,_7Y+j+1)+t(clip(_7X+i,_7Y+j,_7X+i+3,_7Y+j+3))
  26.             if _Blur > 0:
  27.                 EFT = MOVE1+CLIP1+COLOR1+blur(_Blur)
  28.             ass_main(ASS_BUF,SubL(ts + i * _k / _Fs + R, te, 10), EFT, _txt)
  29.     return (ASS_BUF, TCAS_BUF)
复制代码

Rank: 4

7#
发表于 2012-9-13 13:38:33 |显示全部楼层
kk123456 发表于 2012-9-13 13:35
改成这样试试

呜咕。。这样改字幕就变成一个点了0.0

Rank: 4

8#
发表于 2012-9-13 19:03:18 |显示全部楼层
kk123456 发表于 2012-9-13 14:07
试试这个吧,应该是你想要的效果了。我要去上课了

呜咕。。刚刚放学到家。。这个代码遮罩还是不行呢。。。K值效果结束字也就没了0.0

Rank: 4

9#
发表于 2012-9-13 19:06:02 |显示全部楼层
渣渣疯子 发表于 2012-9-13 17:01
今天上课刚回来,我是不太理解你想要什么样的效果。。。但是,你这种写法的话,所做的clip貌 ...

啊呜。。偶也刚放学到家呢。。偶希望的特效是这样的。。比如:在K值里。。_x+50,_y。。移动到_x,_y。。也就是字幕在K值里。。从右边移动到设定的位置咯。。Y位置不要变的哦

Rank: 4

10#
发表于 2012-9-13 19:30:05 |显示全部楼层
渣渣疯子 发表于 2012-9-13 19:22
这么理解下,遮罩和字体是两层,字体的移动可以是move(_x+50,_y,_x,_y)但是遮罩是用了clip,clip是确定遮 ...

呜咕。。好。。偶去改改。。谢谢啦。。

Rank: 4

11#
发表于 2012-9-13 20:00:43 |显示全部楼层
渣渣疯子 发表于 2012-9-13 19:22
这么理解下,遮罩和字体是两层,字体的移动可以是move(_x+50,_y,_x,_y)但是遮罩是用了clip,clip是确定遮 ...
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD                         # frame duration, in millisecond
  4.     global _Fs
  5.     global _Blur
  6.     global COLOR
  7.     _FD = 1000 / GetVal(val_FXFPS)
  8.     _Fs = GetVal(val_FontSize)
  9.     _Blur = GetVal(val_Blur)
  10.     COLOR = DivClr(GetVal(val_1C), GetVal(val_2C), _Fs)


  11. def tcaxPy_Fin():
  12.     pass


  13. time_gap = 1    # you can change this value to 0, or 2 or any other number
  14. time_fac = 1    # you can change this value to 0, or 2 or any other number

  15. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
  16.     ASS_BUF  = []        # used for saving ASS FX lines
  17.     TCAS_BUF = []        # used for saving TCAS FX raw data

  18.     ts = _start + _elapk
  19.     te = _start + _elapk + _k
  20.     _y1 = _y - _a / 2
  21.     _y2 = _y + _a / 2
  22.     for i in range(_Fs):
  23.         _x1 = _x - _Fs / 2 + i
  24.         _x2 = _x1 + 1
  25.         MOVE1 = move(_x + 50, _y , _x, _y)
  26.         CLIP1 = clip(_x1 + 50, _y1, _x2 + 50, _y2) + t(clip(_x1, _y1 , _x2, _y2))
  27.         EFT = MOVE1 + CLIP1 + color1(COLOR[i]) + alpha3(255)
  28.         if _Blur > 0:
  29.             EFT += blur(_Blur)
  30.         ass_main(ASS_BUF, SubL(ts , te, 10), EFT, _txt)

  31.     return (ASS_BUF, TCAS_BUF)
复制代码
呜咕。。改了还是K值结束字也没了(T.T)。。有移动呢

Rank: 4

12#
发表于 2012-9-13 20:14:15 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:09
你这设定的te不就是K值结束,字消失么?你把te = _start + _elapk + _k改成te = _end试试 ...
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD                         # frame duration, in millisecond
  4.     global _Fs
  5.     global _Blur
  6.     global COLOR
  7.     _FD = 1000 / GetVal(val_FXFPS)
  8.     _Fs = GetVal(val_FontSize)
  9.     _Blur = GetVal(val_Blur)
  10.     COLOR = DivClr(GetVal(val_1C), GetVal(val_2C), _Fs)


  11. def tcaxPy_Fin():
  12.     pass


  13. time_gap = 1    # you can change this value to 0, or 2 or any other number
  14. time_fac = 1    # you can change this value to 0, or 2 or any other number

  15. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
  16.     ASS_BUF  = []        # used for saving ASS FX lines
  17.     TCAS_BUF = []        # used for saving TCAS FX raw data

  18.     ts = _start + _elapk
  19.     te = _end
  20.     _y1 = _y - _a / 2
  21.     _y2 = _y + _a / 2
  22.     for i in range(_Fs):
  23.         _x1 = _x - _Fs / 2 + i
  24.         _x2 = _x1 + 1
  25.         MOVE1 = move(_x + 50, _y , _x, _y)
  26.         CLIP1 = clip(_x1 + 50, _y1, _x2 + 50, _y2) + t(clip(_x1, _y1 , _x2, _y2))
  27.         EFT = MOVE1 + CLIP1 + color1(COLOR[i]) + alpha3(255)
  28.         if _Blur > 0:
  29.             EFT += blur(_Blur)
  30.         ass_main(ASS_BUF, SubL(ts , te, 10), EFT, _txt)

  31.     return (ASS_BUF, TCAS_BUF)
复制代码
呜咕。。这样子字是保留了。。可是特效不在K值里完成了0.0。。就好像第一个字出来移动了。。。一直到整句字幕消失了。。它才消失0.0

Rank: 4

13#
发表于 2012-9-13 20:22:27 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:20
犯糊涂了,这么弄得话,的确会让特效时间改变,有两种办法解决,要么改成MOVE1 = move(_x  ...

呜咕。。V。。就是直接给特效固定时间对吗?

Rank: 4

14#
发表于 2012-9-13 20:35:42 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:31
move和t后面都是可以加时间来控制的,不过一句特效里只能用一次move,但是可以用多次t这 ...

呜咕。。V。。ASS代码偶知道一些。。就是不会用t(T.T)。。。对了jitter这个抖动TCAX可以使用吗

Rank: 4

15#
发表于 2012-9-13 20:43:54 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:40
可以,mod里的东西也可以,http://www.tcax.org/forum.php?mod=viewthread&tid=162&extr ...

嘎哦。。mod是什么0.0

Rank: 4

16#
发表于 2012-9-13 20:51:37 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:48
你难道不知道么-。-你说的代码是mod里面的,算是个扩展的东西吧。。。我还没用过那里面的代码... ...

呜咕。。。aegisub里的特效代码都是mod扩展的?

Rank: 4

17#
发表于 2012-9-13 20:56:58 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:54
不是,我上面给你那个文件里的代码是aegisub本身就能用的,你说的那个震动是mod的东西,刚才给你的link里 ...

呜咕。。。偶想到了。。aegisub里有move,fad,fx,等颜色变换特效。。。。aegisub可以使用高级特效需要用t。。而且有的特效还需要下载滤镜0.0。。。听一位大神说的。。。那位大神用aegisub做水波的特效字幕0.0。。好漂亮呢

Rank: 4

18#
发表于 2012-9-13 21:03:31 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:59
呵呵,这东西没头的。会的不难,难的不会,永远都有更难的东西,所以加油就好了,类似水波的效果,M大也 ...

呜咕。。0.0。。以偶现在的水平。。这个都用def特效的几乎看不懂(T.T)

Rank: 4

19#
发表于 2012-9-13 21:09:40 |显示全部楼层
渣渣疯子 发表于 2012-9-13 20:59
呵呵,这东西没头的。会的不难,难的不会,永远都有更难的东西,所以加油就好了,类似水波的效果,M大也 ...

嘎哦。。那个 _D]40GN)7HHMK{]`I8QGGOX.jpg

字感觉被切了0.0。有办法修一下吗

Rank: 4

20#
发表于 2012-9-13 21:15:59 |显示全部楼层
渣渣疯子 发表于 2012-9-13 21:13
那个不是特效啊,你打开tcax根目录下tcaxPy.py看看,就知道了

呜咕。。0.0。。def偶记得是做特效的呢?。。难道偶记错了0.0?
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-5-7 00:54

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH