tencent cloud

文档反馈

素材叠加指引

最后更新时间:2024-07-05 14:36:45
    动效素材叠加是指多个动效素材可以同时生效。
    素材叠加注意事项:
    1. 客户需要自行管理素材之间是否适合叠加。举两个例子:
    例1:特效 A 是变成贵妃脸,特效 B 是变成童话脸,这两个特效叠加后可能会导致画面非常别扭。
    例2:特效 A 是个兔耳朵,特效 B 是猪耳朵,两个叠加后,就有两种耳朵。
    例1和例2这两种情况不适合叠加。如果特效 A 是兔耳朵,特效 B 是送一个飞吻,这两个特效不会冲突,就适合叠加。
    2. 只支持简单素材之间的叠加。简单素材是指只有单动效能力、或者单美妆效果、或者单抠背等,复杂素材是指包含了多种效果。简单素材和复杂素材没有明确的界定,建议客户充分测试后,自行管理哪些素材之间可以叠加,哪些不能叠加。
    3. 叠加时,有动作触发的特效(例如伸出手触发某个特效、微笑触发某个特效等)属于复杂特效,需要放在前面,简单特效放在后面叠加在它之上。
    4. 使用示例:主播使用了特效 A,然后观众送礼物特效 B,B 要叠加在 A 之上,一段时间后 B 消失,恢复成特效 A。那么设置步骤如下:
    4.1 设置特效 A,mergeWithCurrentMotion 设置为 false。
    4.2 设置特效 B,mergeWithCurrentMotion 设置为 true。
    4.3 一小段时间后,再设置 A,mergeWithCurrentMotion 设置为 false。

    如何配置同时生效?

    V3.5.0及以上
    V3.0.1及以上
    1. 如果您使用setEffect方法来更新美颜属性,要实现素材叠加功能,可以在extrainfo中添加 mergeWithCurrentMotion 字段设置为"true"
    2. 如果使用的是updateProperty方法,那么可参见 V3.0.1中列举的方法。

    Android:

    如果想要某个动效/美妆/分割素材叠加在当前素材上,则将该素材 XmagicProperty 对象的 mergeWithCurrentMotion 设置为 true。XMagicProperty 对象的其他属性设置见 美颜参数设置
    XmagicProperty xmagicProperty = new XmagicProperty(XmagicProperty.Category.MOTION,"video_keaituya",mResPath+"xmagic/MotionRes/2dMotionRes/video_keaituya",null,null); xmagicProperty.mergeWithCurrentMotion = true; mXMagicApi.updateProperty(xmagicProperty);

    iOS:

    如果想要某个动效/美妆/分割素材叠加在当前素材上,则设置该素材时,在 withExtraInfo 的字典中设置 mergeWithCurrentMotion 为 true,示例如下:
    NSString *key = _xmagicUIProperty.property.Id;
    NSString *value = [[NSBundle mainBundle] pathForResource:@"makeupMotionRes" ofType:@"bundle"];
    NSDictionary* extraInfo = @{@"mergeWithCurrentMotion":@(true)};
    [self.beautyKitRef configPropertyWithType:@"motion" withName:key withData:[NSString stringWithFormat:@"%@",value] withExtraInfo:extraInfo];
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持