Flash 如何批量编辑swf动画电影唇的形状?

Flash 如何批量编辑swf动画电影唇的形状?,flash,edit,batch-processing,maya,Flash,Edit,Batch Processing,Maya,对于flash游戏项目,我有通过3D渲染软件(即Maya矢量渲染器)生成的swf动画剪辑。现在我需要在单独的多帧剪辑中分离剪辑的各个部分(角色的身体、盔甲、剑等)。但我需要这些剪辑被角色的身体遮住(例如,当剑在身体后面摆动时,应该裁剪,这样即使剑在身体后面摆动,我也可以将剑的动画剪辑保持在身体剪辑前面…) 为此,我使用了一种传统的sfx技术:我在纯绿色背景上渲染每个项目(例如剑),并且角色的身体具有相同的绿色着色器。然后我只需要在Flash中擦除剪辑的每一帧上的绿色形状。问题是我会有很多剪辑,每

对于flash游戏项目,我有通过3D渲染软件(即Maya矢量渲染器)生成的swf动画剪辑。现在我需要在单独的多帧剪辑中分离剪辑的各个部分(角色的身体、盔甲、剑等)。但我需要这些剪辑被角色的身体遮住(例如,当剑在身体后面摆动时,应该裁剪,这样即使剑在身体后面摆动,我也可以将剑的动画剪辑保持在身体剪辑前面…)


为此,我使用了一种传统的sfx技术:我在纯绿色背景上渲染每个项目(例如剑),并且角色的身体具有相同的绿色着色器。然后我只需要在Flash中擦除剪辑的每一帧上的绿色形状。问题是我会有很多剪辑,每个都有很多帧。。。有没有一种方法可以使用flash或任何软件对其进行批量编辑?或者任何人都可以想出一种更方便的方法来实现这一点?

如果您有一个透明的背景png,请尝试将其中一个引入flash并对其进行位图跟踪。这样你就只剩下你的对象了,省去了在每一帧上“擦除绿色形状”的步骤

如果这是可以接受的/您想要的,那么您可以做的是将整吨帧作为movieclip导入到时间线中,然后使用jsfl脚本一次对所有帧进行位图跟踪

下面是我编写的一个jsfl脚本,它可以跟踪分布在多个帧上的位图(每个帧有一个位图)。复制内容并将其另存为jsfl文件

要运行它,请将一组PNG导入时间线,并选择它们所在的所有帧。然后转到“命令”->“运行命令”以跟踪选定帧中的每个位图

var timeline = fl.getDocumentDOM().getTimeline();

// get selected frame numbers
var selectedFrameObject = timeline.getSelectedFrames();

var start = selectedFrameObject[1];
var end = selectedFrameObject[2];

fl.trace("Selected frames: "+ start +"-"+ end);

for(var counter = start; counter < end; counter++){
    timeline.currentFrame = counter;
    document.selectAll();
    // you can play with these values to change the tracing parameters
    document.traceBitmap(100, 8, "normal", "many corners");
    document.selectNone();
}
var timeline=fl.getDocumentDOM().getTimeline();
//获取选定的帧编号
var selectedFrameObject=timeline.getSelectedFrames();
var start=selectedFrameObject[1];
var end=selectedFrameObject[2];
fl.trace(“选定帧:“+start+”-“+end”);
用于(变量计数器=开始;计数器<结束;计数器++){
timeline.currentFrame=计数器;
document.selectAll();
//您可以使用这些值来更改跟踪参数
traceBitmap(100,8,“正常”、“多角”);
document.selectNone();
}

是否可以使用透明背景渲染每个对象的帧,并保存为PNG?是的,为什么不可以,因为我将使用位图精灵sheetsYes!这个jsfl的东西正是我想要的。。。我对你的脚本做了一些小改动,并设法做到了我想要的。非常感谢!