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

 找回密码
 新人加入
楼主: milkyjing
打印 上一主题 下一主题

[ASS特效教程入门系列] 三. 曲线轨迹的简单应用及逐帧特效 [复制链接]

Rank: 4

楼主
发表于 2013-2-2 13:12:32 |显示全部楼层
爱雪音MiKu 发表于 2013-2-2 10:50
呜咕。。。生成多个曲线有什么简单的方法吗0.0?。。还是就复制一下代码? ...

加个循环,套写随机坐标就行了

Rank: 4

沙发
发表于 2013-2-2 14:07:04 |显示全部楼层
  1. from tcaxPy import *

  2. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):

  3.     ASS_BUF  = []        # 保存ASS特效
  4.     TCAS_BUF = []        # 保存TCAS特效

  5.     ##### 主要特效编写操作 #####

  6.     ts = _start + _elapk - 20       # 效果开始时间
  7.     _Fs = GetVal(val_FontSize)      # 字体大小
  8.     EFT1 = alpha1(HexToDec('AA')) + alpha3(HexToDec('AA')) + color1('FFFFFF') + \
  9.             bord(5) + blur(5) + t(0, 100, bord(3) + blur(3)) + fad(0, 200)
  10.     EFT2 = alpha1(HexToDec('AA')) + alpha3(HexToDec('00')) + color1('FFFFFF') + color3('FFFFFF') + \
  11.             bord(3) + blur(3) + t(0, 100, bord(1) + blur(1) + alpha3(HexToDec('44'))) + fad(0, 200)
  12.     for k in range(2):   #加个循环,生成两条不同的曲线
  13.         num = 40    # 曲线上点的个数
  14.         xs = _x + randint(-60, 60)    # 开始点
  15.         ys = _y + randint(-60, 60)
  16.         xc1 = xs + randint(-50, 50)     # 控制点1
  17.         yc1 = ys + randint(-90, 90)
  18.         xc2 = xc1 + randint(-20, 50)    # 控制点2
  19.         yc2 = yc1 + randint(-5, 50)
  20.         xe = _x     # 结束点
  21.         ye = _y
  22.         points = Bezier3(num, xs, ys, xe, ye, xc1, yc1, xc2, yc2)   # 3阶贝塞尔曲线, 控制点的生成是重点以及难点
  23.    
  24.         for i in range(num):
  25.             POS = pos(points[i][0], points[i][1])   # 获取曲线上点坐标
  26.             EFT = POS + EFT1 + color3('5A3AFF')
  27.             ass_main(ASS_BUF, SubL(ts + i, ts + i + 30, 15, Pix_Style), EFT, PixPt())
  28.             EFT = POS + EFT2
  29.             ass_main(ASS_BUF, SubL(ts + i, ts + i + 30, 15, Pix_Style), EFT, PixPt())
  30.    

  31.     ##### 将结果返回给tcax进行处理 #####

  32.     return (ASS_BUF, TCAS_BUF)
复制代码
例如这样

Rank: 4

板凳
发表于 2013-2-2 20:36:49 |显示全部楼层
本帖最后由 kk123456 于 2013-2-2 20:37 编辑
爱雪音MiKu 发表于 2013-2-2 18:59
呜咕。。这样了。。现在貌似是TCC的设置问题0.0


k值文件还在?确定命名为test_k.ass?
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-5-3 19:17

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH