spine动画插入任意Actor

spine中插入任意Actor

原理替换到data数据中的region

修改部分

Skin

add set region方法
public void setAttachment(Attachment attachment) {
  this.attachment = attachment;
}

获取data数据,设置region

SkeletonData data = actor.getSkeleton().getData();
Skin defaultSkin = data.getDefaultSkin();
for (Skin.SkinEntry attachment : defaultSkin.getAttachments()) {
    if (attachment.getName().equals("xuanq2_00")) {
        attachment.setAttachment(actorAttachment);
    }
}

修改renderer方法

draw方法加入
if (attachment instanceof ActorAttachment){
    Actor actor = ((ActorAttachment) attachment).getActor();
    Bone bone = slot.getBone();
    float worldX = bone.getWorldX();
    float worldY = bone.getWorldY();
    actor.setOrigin(Align.center);
    actor.setPosition(worldX,worldY, Align.center);
    actor.setScale(bone.scaleX,bone.scaleY);
    actor.setColor(slot.getColor());
    actor.draw(batch,skeleton.color.a);
}

自定义ActorAttachment

import com.badlogic.gdx.scenes.scene2d.Actor;

public class ActorAttachment extends Attachment {

    private Actor actor;

    public ActorAttachment(String name) {
        super(name);
    }

    public Actor getActor() {
        return actor;
    }

    public ActorAttachment(ActorAttachment actorAttachment) {
        super(actorAttachment);
        this.actor = actorAttachment.actor;
    }

    public void setActor(Actor actor) {
        this.actor = actor;
    }

    @Override
    public Attachment copy() {
        return new ActorAttachment(this);
    }
}

理论上可以支持任意……

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • """1.个性化消息: 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消息应非常简单,如“Hello ...
    她即我命阅读 5,116评论 0 6
  • 为了让我有一个更快速、更精彩、更辉煌的成长,我将开始这段刻骨铭心的自我蜕变之旅!从今天开始,我将每天坚持阅...
    李薇帆阅读 2,246评论 1 4
  • 似乎最近一直都在路上,每次出来走的时候感受都会很不一样。 1、感恩一直遇到好心人,很幸运。在路上总是...
    时间里的花Lily阅读 1,740评论 1 3
  • 1、expected an indented block 冒号后面是要写上一定的内容的(新手容易遗忘这一点); 缩...
    庵下桃花仙阅读 1,081评论 1 2
  • 一、工具箱(多种工具共用一个快捷键的可同时按【Shift】加此快捷键选取)矩形、椭圆选框工具 【M】移动工具 【V...
    墨雅丫阅读 1,528评论 0 0

友情链接更多精彩内容