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

标题: [内置特效EXT]简单粒子特效test [打印本页]

作者: milkyjing    时间: 2011-9-1 20:27:11     标题: [内置特效EXT]简单粒子特效test

说明

感谢X大提供源代码(C#)

此效果出处:
http://u.115.com/file/e60g95oi#
[X]007_Munto_TV_ED.mkv

附件为预览及脚本下载

移植过来的py脚本, (TCAX内置特效兼容)
  1. ################################################################################
  2. ### description:
  3. ### expanding particles


  4. from tcaxPy import *


  5. def tcaxPy_Init():
  6.     global _FD                         # frame duration, in millisecond
  7.     global _Fs
  8.     global Font
  9.     _FD = 1000 / GetVal(val_FXFPS)
  10.     _Fs = GetVal(val_FontSize)
  11.     Font = InitFont(GetVal(val_FontFileName), GetVal(val_FaceID), _Fs, GetVal(val_Spacing), GetVal(val_SpaceScale), 0xFFFFFF, 0, 0)


  12. def tcaxPy_Fin():
  13.     FinFont(Font)


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

  17.     ts = _start + _elapk
  18.     te = _start + _elapk + _k
  19.     count = int((te - ts) * 2)
  20.     PIX = TextPix(Font, _txt)
  21.     points = PixPoints(PIX)
  22.     pt_num = len(points)
  23.     dx = _x - int(_a / 2 + 0.5) + PIX[0][0]
  24.     dy = _y - int(_Fs / 2 + 0.5) + PIX[0][1]
  25.     for i in range(count):
  26.         pt = points[randint(0, pt_num - 1)]
  27.         t0 = randint(int(ts), int(te))
  28.         t1 = t0 + 150
  29.         x = dx + pt[0]
  30.         y = dy + pt[1]
  31.         EFT = move(x, y, randint(x - 50, x + 50), randint(y - 35, y + 35)) + fad(0, 300) + alpha1(0) + color1('FFFFFF') + \
  32.               alpha3(0) + color3('003DB8') + bord(2) + blur(2)
  33.         ass_main(ASS_BUF, SubL(t0, t1, 0, Pix_Style), EFT, RandPolygon(2, 2, 6))

  34.     return (ASS_BUF, TCAS_BUF)
复制代码


附件: [预览] preview.mp4 (2011-9-1 20:27:02, 623.31 KB) / 下载次数 5050
http://tcax.org/forum.php?mod=attachment&aid=NDN8ZGJmMjViNDh8MTczMjIyNzY5OXwwfDA%3D

附件: [脚本] ext_particle.py (2011-9-1 20:27:00, 1.45 KB) / 下载次数 4239
http://tcax.org/forum.php?mod=attachment&aid=NDJ8NzhiNzY5N2Z8MTczMjIyNzY5OXwwfDA%3D
作者: 小歪叽    时间: 2011-9-29 14:23:59

提示错误啊 应该怎么解决呢?
提示:global name 'PixPoints'is not defined.
failed to execute the tcaxPy _main() function in the 1(th) user tcax py script.
作者: milkyjing    时间: 2011-9-29 20:15:02

小歪叽 发表于 2011-9-29 14:23
提示错误啊 应该怎么解决呢?
提示:global name 'PixPoints'is not defined.
failed to execute the tcaxP ...

升级到最新版的 Beta3 SP1

http://www.tcax.org/forum.php?mod=viewthread&tid=99


作者: 小歪叽    时间: 2011-9-30 13:30:54

milkyjing 发表于 2011-9-29 20:15
升级到最新版的 Beta3 SP1

http://www.tcax.org/forum.php?mod=viewthread&tid=99

升级后还是提示“global name 'PixPoints'is not defined.”呃、、、
作者: milkyjing    时间: 2011-9-30 21:45:47

小歪叽 发表于 2011-9-30 13:30
升级后还是提示“global name 'PixPoints'is not defined.”呃、、、

额... 把tcc文件贴出来看下吧....
作者: 小歪叽    时间: 2011-9-30 22:33:26

  1. # tcc file version

  2. < tcc file version = 1.0 >


  3. # mode configuration

  4. < inherit ass header = false >
  5. < k mode = syllable >
  6. < text layout = horizontal >
  7. < tcaxpy init = true >
  8. < tcaxpy user = false >
  9. < tcaxpy fin = true >


  10. # py settings

  11. < py file = ext_particle.py >    < beg line = 1 >    < end line = 0 >



  12. # main settings

  13. < k-timed ass file = op_k.ass >
  14. < font file = 迷你简毡笔黑.TTF >    < font face id = 1 >    < font size = 40 >
  15. < fx width = 1280 >    < fx height = 720 >    < fx fps = 23.976 >
  16. < alignment = 7 >
  17. < x offset = 0 >    < y offset = 15 >
  18. < spacing = 0 >    < space scale = 1.0 >


  19. # style settings

  20. < font face name = "" >
  21. < bord = 0 >    < shad = 0 >
  22. < primary color = 057ED8 >    < secondary color = A6A037 >    < outline color = CFE1CE >    < back color = 000000 >
  23. < primary alpha = 0 >    < secondary alpha = 0 >    < outline alpha = 0 >    < back alpha = 100 >


  24. # additional settings

  25. < blur = 1.0 >
复制代码

作者: milkyjing    时间: 2011-10-1 00:32:38

小歪叽 发表于 2011-9-30 22:33

ext_particle.py 是放在工程文件夹中的吧?

如果确认升级成功了的话, 还真不知道问题出在哪儿.

Beta3中tcaxPy.pyd的大小为603 KB (617,984 bytes)
SP1中tcaxPy.pyd的大小为604 KB (618,496 bytes)
请确认下你的tcax程序根目录中, tcaxPy.pyd的大小同SP1的相同.

作者: 小歪叽    时间: 2011-10-7 13:04:31

升级只要把tcax.exe替换就可以了吧?
作者: milkyjing    时间: 2011-10-7 14:38:56

小歪叽 发表于 2011-10-7 13:04
升级只要把tcax.exe替换就可以了吧?

sp1压缩包中的全部文件都拷贝替换掉Beta3中的同名文件.
作者: 小歪叽    时间: 2011-10-7 19:29:53

milkyjing 发表于 2011-10-7 14:38
sp1压缩包中的全部文件都拷贝替换掉Beta3中的同名文件.

嗯 可以了 谢谢啦~
作者: kk123456    时间: 2012-6-24 09:39:48

请问一下"RandPolygon(2, 2, 6)"这个是什么意思,如果改成“PixPt()“的话,粒子明显暗很多。
作者: kk123456    时间: 2012-6-24 09:44:49

虽然tcaxPy.py里有这个函数的介绍,但我看不明白,麻烦解释一下。
作者: milkyjing    时间: 2012-6-24 09:52:21

kk123456 发表于 2012-6-24 09:39
请问一下"RandPolygon(2, 2, 6)"这个是什么意思,如果改成“PixPt()“的话,粒子明显暗很多。 ...

RandPolygon用于生成随机形状的矩形,参数为r1, r2, 和v,其中,r1, r2可以想成是控制大小的,v是顶点数。
PixPt()只是生成单个像素点。
作者: huajiang5200    时间: 2017-8-16 23:04:12

崩溃下载不了
作者: qweasdshilk    时间: 2017-12-17 00:34:32

感谢分享
作者: cookiez    时间: 2017-12-31 00:01:55

感谢分享!
作者: 我的仓鼠爱吃猫    时间: 2018-8-12 10:10:19

感谢分享!
作者: imprint-long    时间: 2018-8-12 17:20:16

感谢分享。。。。




欢迎光临 TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua (http://tcax.org/) Powered by Discuz! X2