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

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

TCAX内置特效脚本编写规范 [复制链接]

Rank: 4

楼主
发表于 2012-1-28 11:46:16 |显示全部楼层
求解释一下
  1.     CLR = ('FFFFFF', 'DDDDDD', '3CCEFF')

  2.     if _j == 0 or _j == _n - 1:

  3.         fac = 2

  4.     else:

  5.         fac = 4

  6.     num = _k * fac

  7.     for i in range(num):

  8.         if 0 < _j and _j < _n - 1:

  9.             rnd = randint(-int(_KarTime[_i][_j - 1] / 2), _k + int(_KarTime[_i][_j + 1] / 2))

  10.         else:

  11.             rnd = randint(0, _k)

  12.         ts = _start + _elapk + rnd

  13.         te = _start + _elapk + rnd + randint(int(2 * _FD / 10), int(4 * _FD / 10))

  14.         POS = pos(_x + randint(-int(_a / 2) + 4, int(_a / 2) - 4), _y + randint(-int(_Fs / 2) + 6, int(_Fs / 2) - 6))

  15.         EFT = fn('Arial') + fs(10) + bord(0) + fsc(randint(40, 80), randint(40, 80)) + color(CLR[randint(0, 2)])

  16.         ass_main(ASS_BUF, SubL(ts, te, 15), POS + EFT, '★')



  17.     return (ASS_BUF, TCAS_BUF)
复制代码
  1. te = _start + _j * time_fac * _FD / 10 - time_gap * _FD / 10
复制代码
这部分代码的具体意思,其余的还勉强看得明白。

Rank: 4

沙发
发表于 2012-1-28 15:04:00 |显示全部楼层
milkyjing 发表于 2012-1-28 12:38
第一块代码是内置特效脚本中的吧?你把具体不明白的地方说下吧,整块解释还真不好下手…

第二块代码只是 ...

num = _k * fac

    for i in range(num):

        if 0 < _j and _j < _n - 1:

            rnd = randint(-int(_KarTime[_i][_j - 1] / 2), _k + int(_KarTime[_i][_j + 1] / 2))

        else:

            rnd = randint(0, _k)

        ts = _start + _elapk + rnd
本人完全没有python基础,这段完全不懂。
另外在时间计算中的(_n - _j - 1) * time_fac 这个是什么意思,那个_j和_n并没有在tcaxPy.pyc中定义啊?

Rank: 4

板凳
发表于 2012-1-28 19:31:58 |显示全部楼层
milkyjing 发表于 2012-1-28 19:05
循环语句, 条件语句, randint是取随机的函数.
python知识是不可少的, 至少学个入门吧...

本人正在学习python,那些python教程也还勉强看得懂,不过总觉得单单做字幕特效有好多都用不上。
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-5-5 01:44

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH