TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua
标题:
求这个特效的代码怎么做成的谢谢
[打印本页]
作者:
fhangoo
时间:
2012-7-14 10:08:48
标题:
求这个特效的代码怎么做成的谢谢
本帖最后由 四月一日 君寻 于 2012-8-15 10:43 编辑
求这个特效的代码怎么做成的谢谢 别人说是什么粒子效果 又没PY不知道怎么搞求大大手把手简单点教
2012-7-14 10:08:31 上传
下载附件
(13.1 KB)
图片附件:
未命名333.jpg
(2012-7-14 10:08:31, 13.1 KB) / 下载次数 1630
http://tcax.org/forum.php?mod=attachment&aid=NjY4fGE5YjQyZWIzfDE3MzI0Njg1ODd8MHww
作者:
kk123456
时间:
2012-7-14 13:30:26
像素字,再加随机向上的位移
作者:
kk123456
时间:
2012-7-14 13:47:33
from tcaxPy import *
def tcaxPy_Init(): # 主要作用是初始化一个字体
global _Fs # 字体大小
global _Font # 我们将要创建的字体
_Fs = GetVal(val_FontSize) # 获取字体大小
fontFileName = GetVal(val_FontFileName) # 获取字体文件名
faceID = GetVal(val_FaceID) # 获取字体Face序号
spacing = GetVal(val_Spacing) # 获取文字间隔
spaceScale = GetVal(val_SpaceScale) # 获取空格缩放比率
color = MakeRGB(255, 255, 255) # 字体颜色
bord = 0 # 字体边框厚度
isOutline = False # 只有边框
_Font = InitFont(fontFileName, faceID, _Fs, spacing, spaceScale, color, bord, isOutline) # 创建字体
def tcaxPy_Fin():
FinFont(_Font) # 销毁字体 释放内存
def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):
ASS_BUF = [] # 保存ASS特效
TCAS_BUF = [] # 保存TCAS特效
##### 主要特效编写操作 #####
# 像素字特效固定代码框架 开始
PIX = TextPix(_Font, _txt) # 获取当前文字的PIX结构
initPosX = _x - int(_a / 2 + 0.5) + PIX[0][0] # 第一个像素的X轴坐标
initPosY = _y - int(_Fs / 2 + 0.5) + PIX[0][1] # 第一个像素的Y轴坐标
for h in range(PIX[1][1]): # 开始纵向扫描
posY = initPosY + h # 当前像素Y轴坐标
for w in range(PIX[1][0]): # 开始横向扫描
posX = initPosX + w # 当前像素X轴坐标
idx = 4 * (h * PIX[1][0] + w) # 脚标
pixR = PIX[2][idx + 0] # 当前像素的红色分量
pixG = PIX[2][idx + 1] # 当前像素的绿色分量
pixB = PIX[2][idx + 2] # 当前像素的蓝色分量
pixA = PIX[2][idx + 3] # 当前像素的透明度
if pixA != 0: # 如果当前像素不为透明则进行如下操作
# 增加你的效果, 注意Style使用Pix_Style
ass_main(ASS_BUF, SubL(_start+_elapk, _start+_elapk+_k, 0, Pix_Style), move(posX, posY,posX+randint(-5,5), posY+randint(-60,-40)) + color1(FmtRGB(pixR, pixG, pixB)) + alpha1(255 - pixA)+fad(0,200), PixPt())
ass_main(ASS_BUF, SubL(_start, _start+_elapk), pos(_x,_y), _txt)
return (ASS_BUF, TCAS_BUF)
复制代码
试试这个,那move的坐标是我随便写的,可根据需要自己改。
作者:
fhangoo
时间:
2012-7-14 14:04:03
本帖最后由 fhangoo 于 2012-7-14 14:07 编辑
哦谢谢大大了你QQ多少 我不会改坐标移动呵呵 我先预览下看看
刚预览了下 太快了 完全看不到往上飘的效果
作者:
kk123456
时间:
2012-7-14 18:08:28
fhangoo 发表于 2012-7-14 14:04
哦谢谢大大了你QQ多少 我不会改坐标移动呵呵 我先预览下看看
刚预览了下 太快了 完全看不到往上飘的效果 ...
关于坐标的修改:move(x,y,x2,y2)其中x,y是开始点的横纵坐标,x2,y2是结束点的横纵坐标。你可以直接修改”move(posX, posY,posX+randint(-5,5), posY+randint(-60,-40))“这句中的"posX+randint(-5,5), posY+randint(-60,-40)“即结束点的横纵坐标,另外randint(-60,-40)意为在-60~-40之间取随机值,可自行修改。
建议看一下
入门教程
,不过先学一下ass的特效代码和一些python的基础。
ps:我才不是什么大大呢!
作者:
kk123456
时间:
2012-7-14 18:11:09
fhangoo 发表于 2012-7-14 14:04
哦谢谢大大了你QQ多少 我不会改坐标移动呵呵 我先预览下看看
刚预览了下 太快了 完全看不到往上飘的效果 ...
还有效果太快的话就修改时间,看完入门教程应该就知道怎么改了,不过要注意时间的衔接。
作者:
fhangoo
时间:
2012-7-15 20:24:45
哦谢谢拉 还是不太会搞最后只能找别人帮我改下了呵呵 自己改了半天效果没变
作者:
a000
时间:
2012-8-2 21:19:04
好强大的解答
欢迎光临 TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua (http://tcax.org/)
Powered by Discuz! X2