更新自述

This commit is contained in:
FGHRSH 2018-03-05 00:24:13 +08:00 committed by GitHub
parent 8ca9f5234a
commit 3c07c84e63
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

343
README.md
View File

@ -1,171 +1,172 @@
# Live2D API # Live2D API
Live2D 看板娘插件 (https://www.fghrsh.net/post/123.html) 上使用的后端 API Live2D 看板娘插件 (https://www.fghrsh.net/post/123.html) 上使用的后端 API
### 特性 ### 特性
- 原生 PHP 开发,无需伪静态,开箱即用 - 原生 PHP 开发,无需伪静态,开箱即用
- 支持 模型、皮肤 的 顺序切换 和 随机切换 - 支持 模型、皮肤 的 顺序切换 和 随机切换
- 支持 单模型 单皮肤 切换、多组皮肤 递归穷举 - 支持 单模型 单皮肤 切换、多组皮肤 递归穷举
- 支持 同分组 多个模型 或 多个路径 的 加载切换 - 支持 同分组 多个模型 或 多个路径 的 加载切换
## 使用 ### 使用
### 目录结构 #### 目录结构
```shell ```shell
│ model_list.json // 模型列表 │ model_list.json // 模型列表
├─model // 模型路径 ├─model // 模型路径
│ └─GroupName // 模组分组 │ └─GroupName // 模组分组
│ └─ModelName // 模型名称 │ └─ModelName // 模型名称
├─add // 更新皮肤列表 ├─add // 更新皮肤列表
├─get // 获取模型配置 ├─get // 获取模型配置
├─rand // 随机切换模型 ├─rand // 随机切换模型
├─rand_textures // 随机切换皮肤 ├─rand_textures // 随机切换皮肤
├─switch // 顺序切换模型 ├─switch // 顺序切换模型
├─switch_textures // 顺序切换皮肤 ├─switch_textures // 顺序切换皮肤
└─tools └─tools
modelList.php // 列出模型列表 modelList.php // 列出模型列表
modelTextures.php // 列出皮肤列表 modelTextures.php // 列出皮肤列表
name-to-lower.php // 文件名格式化 name-to-lower.php // 文件名格式化
``` ```
### 添加模型 #### 添加模型
- 单模型 单皮肤 切换 - 单模型 单皮肤 切换
- 单次加载只输出一个皮肤 - 单次加载只输出一个皮肤
- 皮肤放在 `textures` 文件夹,自动识别 - 皮肤放在 `textures` 文件夹,自动识别
```shell ```shell
│ index.json │ index.json
│ model.moc │ model.moc
│ textures.cache // 皮肤列表缓存,自动生成 │ textures.cache // 皮肤列表缓存,自动生成
├─motions ├─motions
│ idle_01.mtn │ idle_01.mtn
│ idle_02.mtn │ idle_02.mtn
│ idle_03.mtn │ idle_03.mtn
└─textures └─textures
default-costume.png default-costume.png
school-costume.png school-costume.png
winter-costume.png winter-costume.png
``` ```
- 单模型 多组皮肤 递归穷举 - 单模型 多组皮肤 递归穷举
- 多组皮肤 组合模型、穷举组合 - 多组皮肤 组合模型、穷举组合
- 皮肤文件夹按 `texture_XX` 命名 - 皮肤文件夹按 `texture_XX` 命名
- 添加 `textures_order.json` 列出组合 - 添加 `textures_order.json` 列出组合
```shell ```shell
│ index.json │ index.json
│ model.moc │ model.moc
│ textures.cache │ textures.cache
│ textures_order.json │ textures_order.json
├─motions ├─motions
│ idle_01.mtn │ idle_01.mtn
│ idle_02.mtn │ idle_02.mtn
│ idle_03.mtn │ idle_03.mtn
├─texture_00 ├─texture_00
│ 00.png │ 00.png
├─texture_01 ├─texture_01
│ 00.png │ 00.png
│ 01.png │ 01.png
│ 02.png │ 02.png
├─texture_02 ├─texture_02
│ 00.png │ 00.png
│ 01.png │ 01.png
│ 02.png │ 02.png
└─texture_03 └─texture_03
00.png 00.png
01.png 01.png
``` ```
textures_order.json textures_order.json
```json ```json
[ [
["texture_00"], ["texture_00"],
["texture_01","texture_02"], ["texture_01","texture_02"],
["texture_03"] ["texture_03"]
] ]
``` ```
textures.cache textures.cache
```json ```json
[ [
["texture_00/00.png","texture_01/00.png","texture_02/00.png","texture_03/00.png"], ["texture_00/00.png","texture_01/00.png","texture_02/00.png","texture_03/00.png"],
["texture_00/00.png","texture_01/00.png","texture_02/00.png","texture_03/01.png"], ["texture_00/00.png","texture_01/00.png","texture_02/00.png","texture_03/01.png"],
["texture_00/00.png","texture_01/01.png","texture_02/01.png","texture_03/00.png"], ["texture_00/00.png","texture_01/01.png","texture_02/01.png","texture_03/00.png"],
["texture_00/00.png","texture_01/01.png","texture_02/01.png","texture_03/01.png"], ["texture_00/00.png","texture_01/01.png","texture_02/01.png","texture_03/01.png"],
["texture_00/00.png","texture_01/02.png","texture_02/02.png","texture_03/00.png"], ["texture_00/00.png","texture_01/02.png","texture_02/02.png","texture_03/00.png"],
["texture_00/00.png","texture_01/02.png","texture_02/02.png","texture_03/01.png"] ["texture_00/00.png","texture_01/02.png","texture_02/02.png","texture_03/01.png"]
] ]
``` ```
- 同分组 多个模型 或 多个路径 切换 - 同分组 多个模型 或 多个路径 切换
- 修改 `model_list.json` 添加多个模型 - 修改 `model_list.json` 添加多个模型
```shell ```shell
├─model ├─model
│ ├─Group1 │ ├─Group1
│ │ ├─Model1 │ │ ├─Model1
│ │ │ index.json │ │ │ index.json
│ │ │ │ │ │
│ │ └─Model2 │ │ └─Model2
│ │ index.json │ │ index.json
│ │ │ │
│ ├─Group2 │ ├─Group2
│ │ └─Model1 │ │ └─Model1
│ │ index.json │ │ index.json
│ │ │ │
│ └─GroupName │ └─GroupName
│ └─ModelName │ └─ModelName
│ │ index.json │ │ index.json
│ │ model.moc │ │ model.moc
│ │ │ │
│ ├─motions │ ├─motions
│ └─textures │ └─textures
``` ```
model_list.json model_list.json
```json ```json
{ {
"models": [ "models": [
"GroupName/ModelName", // 分组 1 模型 1 "GroupName/ModelName",
[ [
"Group1/Model1", // 分组 2 模型 1 "Group1/Model1",
"Group1/Model2", // 分组 2 模型 2 "Group1/Model2",
"Group2/Model1" // 分组 2 模型 3 "Group2/Model1"
] ]
], ],
"messages": [ "messages": [
"Example 1", // 分组 1 欢迎语 "Example 1",
"Example 2" // 分组 2 欢迎语 "Example 2"
] ]
} }
``` ```
### 接口用法 #### 接口用法
- `/add/` - 检测 新增皮肤 并更新 缓存列表 - `/add/` - 检测 新增皮肤 并更新 缓存列表
- `/get/?id=1-23` 获取 分组 1 的 第 23 号 皮肤 - `/get/?id=1-23` 获取 分组 1 的 第 23 号 皮肤
- `/rand/?id=1` 根据 上一分组 随机切换 - `/rand/?id=1` 根据 上一分组 随机切换
- `/switch/?id=1` 根据 上一分组 顺序切换 - `/switch/?id=1` 根据 上一分组 顺序切换
- `/rand_textures/?id=1-23` 根据 上一皮肤 随机切换 同分组其他皮肤 - `/rand_textures/?id=1-23` 根据 上一皮肤 随机切换 同分组其他皮肤
- `/switch_textures/?id=1-23` 根据 上一皮肤 顺序切换 同分组其他皮肤 - `/switch_textures/?id=1-23` 根据 上一皮肤 顺序切换 同分组其他皮肤
## 版权声明 ### 版权声明
- (>▽<) 都看到这了,点个 Star 吧 ~ - (>▽<) 都看到这了,点个 Star 吧 ~
**API 内所有模型 版权均属于原作者,仅供研究学习,不得用于商业用途**
**API 内所有模型 版权均属于原作者,仅供研究学习,不得用于商业用途**
MIT © FGHRSH
MIT © FGHRSH