Live 2D

WordPress Live 2D 1.7.6 版本更新

  1. Cubism Core for Web 改为非必要加载项,使用时将从JS中同步加载,完成后执行渲染(此处有缓存)
  2. 减少了不必要的提示信息,净化你的控制台
  3. 屏幕最小尺寸逻辑改为:加载时如果屏幕尺寸不足则放弃加载插件,节省资源(期望各位继续反馈)
  4. 修复在WordPress 5.5 后台报错的问题,报错时颜色设置会出现错误,请更新此版本
  5. 修改了一些文案和主题兼容问题。
Live 2D

最近很懒!

非常抱歉各位issues回复稍微晚了一些,最近想偷懒了!

我会尽量采取各位再issues上提出的问题,并一一解决,但是主要还是我会考虑为何加载速度过慢

下面我有另一个考虑就是将V2版本和V3版本的SDK4.0拆分成2个,按需加载,来避免压力过大的问题。

感谢各位的支持和耐心!

庆祝插件使用超100人!

Live 2D

Live 2D moc3 动作v3版调整完成

moc3的触发动作在sdk4.0中调用相对简单,也比较直观。

本次调整比较大的是在于预加载时的动作文件处理,和触发动作后寻找预加载文件进行执行的逻辑。

在预加载过程中,Framework先进行json文件的读取,但是由于json文件不一致,导致读取的时候没有动作名称加载进内存,所以动作无法执行。

动作预加载是以分组执行的方式进行的,用户在model3.json中可对动作进行分组,例如Idle事件,如果正确处理应该会在Idle分组中有多个动作,在待机状态下随机执行,但如果我再客户端代码中写太多干预服务器文件的重组,会导致冗余严重,所以就进行了简单处理,只对可触摸部分进行了调整。

在下一个版本,我会修改API部分,让API通过定义符合客户端要求,届时API将会有后台进行设置,欢迎各位使用者fork

感谢railzy提出的建议,也感谢各位使用者。

Live 2D

WordPress Live 2D 1.7.8_beta 版本更新

  • 此版本为测试版本,请在github上下载更新

  • 新增后台设置:moc3模型自定义动作,提供给Cubism Editor 3.x版本的模型明确指定动作文件使用

  • lapplive2dmanager.ts 的 onTap 方法:增加判断自定义的hitAreaList,用户可在WP后台对hitAreaList进行设置
  • 对缩放算法进行修正,由原有lapplive2dmanager.ts 的 onUpdate 方法中计算 projection.scale(zoom, (zoom * width) / height); 改为使用Framework/math/cubismmodelmatrix.ts 中的构造方法this.setHeight(zoom); 进行控制,以确保缩放时触摸区域同比例缩放。
  • 此版本为本地调整版本,下一个版本将直接修改API,从源头来保证生成的文件可被动作调用。
  • 具体调整细节请看上一篇文章中的调整过程。
Live 2D

对于Live2D的Motion可以成功读取

在官方framework里面有一个motion3.json的parse方法,他会转换json中的动作,给到group动作组,提供后续触碰支持,在1.7.3版本中已经实际安装,此版本的debug版已经上传至github,debug版本安装后将会加载并反馈点击模型后触发的提示,如果可以,请协助我安装debug版本,并在留言处留下你的网址。

注意:debug版本会扰乱控制台内容,经常输出很多字符,请慎重安装。

https://github.com/jiangweifang/wp-live2d/releases/tag/1.7.3_dev

  • lappmodel.ts 的 375 行 loadCubismMotion 中需要读取 model3.json含有Motions的内容

  • Motions的组成 :
"Motions" : {
    "动作": [
        {
            "File": "motions/动作组_1.motion3.json"
        },
        {
            "File": "motions/动作组_2.motion3.json"
        },
        {
            "File": "motions/动作组_3.motion3.json"
        }
    ]
}

当前问题:
1. moc3模型制作结果由于v3版本生成和v4版本生成后结果不同,导致model3.json中对于Motions的定义有一定差异。
2. 没有动作组被触发,这个需要设置,我会在后台增加设置来配置动作触发的条件。
3. 触发动作可以在model3.json中配置好后直接使用

model3.json配置成功的例子“Hiyori”:

{
    "Version": 3,
    "FileReferences": {
        "Moc": "Hiyori.moc3",
        "Textures": [
            "Hiyori.2048/texture_00.png",
            "Hiyori.2048/texture_01.png"
        ],
        "Physics": "Hiyori.physics3.json",
        "Pose": "Hiyori.pose3.json",
        "UserData": "Hiyori.userdata3.json",
        "Motions": {
            "Idle": [
                {
                    "File": "motions/Hiyori_m01.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m02.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m03.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m05.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m06.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m07.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m08.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m09.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                },
                {
                    "File": "motions/Hiyori_m10.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                }
            ],
            "TapBody": [
                {
                    "File": "motions/Hiyori_m04.motion3.json",
                    "FadeInTime": 0.5,
                    "FadeOutTime": 0.5
                }
            ]
        }
    },
    "Groups": [
        {
            "Target": "Parameter",
            "Name": "LipSync",
            "Ids": [
                "ParamMouthOpenY"
            ]
        },
        {
            "Target": "Parameter",
            "Name": "EyeBlink",
            "Ids": [
                "ParamEyeLOpen",
                "ParamEyeROpen"
            ]
        }
    ],
    "HitAreas": [
        {
            "Id": "HitArea",
            "Name": "Body"
        }
    ]
}

例子中“动作”设置为“Idle”为待机动作,模型将会各段时间随机选择“Idle”组中的动作触发,“TapBody”为触发身体触碰时的动作。

在ExStudio中可以看到 hemin_3 有TouchBody、TouchHead、TouchSpecial网格,他们代表触碰这3个位置可以有指定动作触发,这种网格只可以在Cubism Editor工具中进行修改和创建。

鉴于以上情景,我将会在代码中增加读取motions的方法,提供给没有按照Hiyori 配置的model3.json,但是相对的,用户需要在后台对触发的位置进行定义.

Live 2D

我们遇到了麻烦:(

在使用MOC3模型的时候发现有动作导致无法兼容的问题,果然是偷懒不想修改官方Framework的后果么,我不太敢用经过爆改的版本,今天开始要和爆改版本进行对比,检查哪里有问题了…

Live 2D

WordPress Live 2D 1.7.1版本更新

此版本新增多语言支持,目前支持繁体中文和英文。

从本周起插件将不再每周更新,欢迎留言提出问题,我会针对问题进行修复。

moc3模型触摸的问题是需要通过工具去修改配置文件才可以

您可以使用 Live2DViewerEX 来对模型被触摸的触发点进行调整,我将会在此文章中增加教学。

Live 2D

使用moc3模型的FAQ

我跟踪了一下使用者的网站,其实使用moc3模型的人并不多,下面我解释一下WordPress Live 2D 插件如何使用moc3模型。

什么是moc3模型
– moc3模型指的是在Live 2D Cubism Editor 3.0或更新版本生成的动态文件。

如何在本插件中使用moc3模型
– 将你准备好的moc3模型上传至目录当中,如果您准备存放github中,可以直接存储至Public项目。
– 然后请了解存放路径,并给材质API选项中填写此路径至*.model3.json
– 例如:https://cdn.jsdelivr.net/gh/jiangweifang/[email protected]_api_v4/model/kiritan/kiritan.model3.json

– 刷新页面后,您将会看到moc3模型展示至前台。
– moc3的缩放比例可能会比较小,所以您需要将模型缩放比例调整至合适大小,建议2.0,我没有进行控制是因为如果我在代码中写入2.0,其计算方式将会x2 ,例如1.1 实际计算结果将会是2.2。

Live 2D

WordPress Live 2D 1.7.0版本更新

  1. 对moc3 鼠标事件进行算法修改,现在模型头部可正确的看鼠标行动了
  2. 新增moc3截图功能,可以点击截图按钮拍下看板娘了
  3. 去掉对moc3模型自动x2倍的缩放算法,改为用户自行调整
  4. 追加了帮助信息,您可以通过后台查看帮助了解具体内容。
Live 2D

WordPress Live 2D 1.6.3版本更新

第一次使用MAC电脑完整开发,有点不太顺手,本周更新有点慢了哈哈~

今后大部分更新针对live2d.js文件,请更新之后清理您的cdn加速,以便缓存新版本js文件

  1. 对于Cubism Live2D SDK 4.0的鼠标事件进行算法修改
  2. moc3模型的鼠标跟随视角更宽广(但是还是有问题)
  3. moc3模型背景透明
  4. 您可以直接将后台api地址更换为model3.json的相对地址,以展示moc3的模型,这个地址可以是一个jsdelivr.com
  5. 提示框位置对应错了功能,已经修复了
  • 在使用moc3版本模型的时候,目前不可点击切换模型、材质和截图,后续会逐渐更新。