TIP提示
本文非教程,仅个人对相关内容的整理备忘,如需使用,参考相关项目
概念
Live2D 是什么?
通俗来说,Live2D 是指看板娘、2D 小人,或指实现它所用到的技术。以下援引 Live2D 官方网站的介绍。
Live2D 是一个向插图灌注生命力并能够进行 2D 立体表现的技术。它可以将绘制的原画作为素材实现立体表现。因此,原画所具有的魅力和特点可以原汁原味地传达出来。
Live2D 是备受世界各地创作者喜爱的表现技术、是 2D 实时动画表现的业界标准。它被广泛应用于手机应用程序、家用游戏、虚拟主播(VTuber)、视频制作等各种用途。
Live2D 模型可以使用官方的 Live2D Cubism Editor 工具来制作。

在网页中使用
运作方式
在网页上使用它需要 3 个部分的配合:模型、主要 JS、Live2D SDK JS
首先,是 Live2D 模型文件
├── Pio //Cubism version 2 model
│ ├── model.json //核心文件
│ ├── model.moc
│ ├── motions //动作文件夹
│ │ ├── *.mtn
│ └── textures //皮肤文件夹
│ ├── *.png
├── Senko_Normals //Cubism version 3 model
│ ├── motions //动作文件夹
│ │ ├── *.motion3.json
│ ├── senko.model3.json //核心文件
│ ├── senko.physics3.json
│ ├── senko_normal.4096 //皮肤文件夹
│ │ └── texture_00.png
│ └── senko_normal.moc3
Live2D 模型文件需要通过 Live2D SDK (Cubism)使用。
Cubism 是什么?
Cubism 是 Live2D SDK 的名称,截至目前它及其对应的模型一共存在四个版本:2、3、4、5。Cubism 2 只能驱动版本 2 的模型,而 Cubism 5 兼容除版本 2 以外的所有模型。
然后是 JS,以 stevenjoezhang/live2d-widget 为例,各文件分工如下:
autoload.js
:入口,加载所需文件,传入配置waifu-tips.js
:创建看板娘,配置对话框,调用模型,生成用于切换模型和皮肤的工具栏live2d.min.js
:Live2D SDK,负责小人的显示和各种动作waifu-tips.json
:网页事件的交互话语waifu.css
:样式
目前呢,已经有很多项目让你可以在 Web 平台使用 Live2D
开源项目 | 描述 | 历史 | 星星 |
---|---|---|---|
stevenjoezhang/live2d-widget | 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ 在网页中添加 Live2D 看板娘。兼容 PJAX,支持无刷新加载。 | 很久 | 9.3k |
guansss/pixi-live2d-display | 为 PixiJS v6 提供的 Live2D 插件。此项目旨在成为 web 平台上的通用 Live2D 框架。由于 Live2D 的官方框架非常复杂且不可靠,这个项目已将其重写以提供统一且简单的 API,使你可以从较高的层次来控制 Live2D 模型而无需了解其内部的工作原理 | 久 | 1k |
oh-my-live2d/oh-my-live2d | 使用了 pixi-live2d-display。应用于浏览器环境且开箱即用的Live2D组件, 它支持所有版本的Live2D模型, 使用方式足够简单并且高可自定义, 可以快速为您的个人网站添加Live2D看板娘, 使您的个人网站变得更具有特色. | 新 | 377 |
hacxy/l2d | 让浏览器加载 Live2D 模型更简单。是 oh-my-live2d 作者的项目重构计划的一部分,专注于模型加载能力。 | 新 | 6 |
valaxyjs/valaxy-addon-live2d | valaxy-addon-live2d 是专为 Valaxy 设计的 live2d 看板娘组件。该插件基于 pixi-live2d-display 和 pixi.js 对 live2d-widget 进行了重构和增强,提供了更多功能和更好的模块化支持 | 新 | 6 |
本站
本站基于 Valaxy ,直接使用 valaxyjs/valaxy-addon-live2d 就好。不过这个插件还很不完善,不支持单个本地模型换肤,咱小改了一下才能用。
咱从别处找了 2 个喜欢的模型:Pio 和仙狐。顺便压缩了一下大小,4K -> 1K
,5MB -> 0.5MB
,加载更快,省流量!

已知问题
咱使用的这个 valaxyjs/valaxy-addon-live2d 和 oh-my-live2d/oh-my-live2d 都有同一个问题,那就是当看板娘休息的时候,插件仍然在持续消耗性能,在浏览器任务管理器中可以看到不小的 CPU 和 GPU 占用,在控制台中甚至还看到 DOM 在不停地变化。
这种情况导致大量性能浪费,真的很讨厌

display: none;
,结果发现没什么效果,后来深入插件,新定义了hideModel() showModel()
方法,在隐藏或唤醒时调用,并且调用内部destroy()
方法,解决了大部分问题。虽然清理得还不彻底,咱也无暇再改造了。其他
看到的一些模型展示网站和模型仓库:
密码是我的 B 站昵称首字母(4 位,小写)
看到的一些原创文章:
地址 | 日期 |
---|---|
网页添加 Live2D 看板娘 - FGHRSH 的博客 | 2017 |
给你的博客增加动态看板娘 - 保罗的小宇宙 | 2018 |
给你的网站添加一个萌萌哒的Live2D看板娘 - 雾时之森 | 2020 |
给你的网页中添加Live2D看板娘 - 小言u博客 | 2021 |
快速入门 OhMyLive2D | 2024 |
L2D | 2025 |