在Unity中使用Live2d插件03 模型参数、part的设置

 

除了使用动画的方式可以使模型动起来以外还可以用设置参数的方法使模型动起来。

使用cubism打开Epsilon.cmox模型文件

可以看见在中下Parameter一栏有许多参数,这些参数就是控制模型动作的参数。右键一个属性在inspector面板中会出现相关的信息,其中有个id属性,这便是这个参数的id。2.x版本的sdk是无法从代码中获取参数的id的。

使用模型的setParamFloat方法设置参数,方法参数为(参数id, 值, 权重),实际改变值为值*参数, 权重一般省略

live2DModel.setParamFloat("PARAM_ANGLE_X", 1);//头右转30度

这个PARAM_ANGLE_X便是模型中角度x这个属性的id。

还可以通过获得模型参数的索引来进行设置。

int paramAngleX = live2DModel.getParamIndex("PARAM_ANGLE_X");
live2DModel.setParamFloat(paramAngleX, 1);

 可以在update函数中设置参数的累加和累成来控制模型的动作

void Update () {

        live2DModel.setMatrix(transform.localToWorldMatrix * live2dCanvasPos );
        if (Input.GetKeyDown(KeyCode.A))
        //    //以上一个值累加
        live2DModel.addToParamFloat("PARAM_ANGLE_X", 10, 1);
        //累乘
        live2DModel.multParamFloat("PARAM_ANGLE_X", 2);
        live2DModel.update();
}

 参数设置后可以进行保存与加载(保存与加载的都是整个模型的所有参数)

        live2DModel.saveParam();
        live2DModel.loadParam();

模型除了参数以外,还有部件,在cubism左上角有个part视口,其中每一个文件夹是一个part,点选一个文件夹如文中所示,在监视面板出现这个part的ID,可以通过part的ID来设置相关属性。

设置part的透明度: 0完全透明 1完全不透明

live2DModel.setPartsOpacity("PARTS_01_FACE_001", 0);

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值