这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
extend:character [2023/05/10 21:56] – bibiboxs | extend:character [2024/07/09 04:20] (当前版本) – bibiboxs | ||
---|---|---|---|
行 1: | 行 1: | ||
< | < | ||
# 角色及皮肤扩展 | # 角色及皮肤扩展 | ||
- | 在《沙盘引擎》当前版本中,暂时仅支持**导入人形自定义皮肤**,角色的扩展相当于可添加更多**人形皮肤**,包括但不限于人类身体、内衣、服装,以及一些外表人形的生物、僵尸、变异者等。 | + | 在《沙盘引擎》当前版本中,暂时仅支持**导入==人形角色==自定义皮肤**,角色的扩展相当于可添加更多**人形皮肤**,包括但不限于人类身体、内衣、服装,以及一些外表人形的生物、僵尸、变异者等。 |
> 简单来说,角色系统并不需要指定**它是什么**,只需要通过**增加皮肤贴图**的方式让角色看起来像什么即可,无论皮肤是服装、僵尸还是全裸的肤色贴图。 | > 简单来说,角色系统并不需要指定**它是什么**,只需要通过**增加皮肤贴图**的方式让角色看起来像什么即可,无论皮肤是服装、僵尸还是全裸的肤色贴图。 | ||
## 皮肤贴图扩展 | ## 皮肤贴图扩展 | ||
- | 角色皮肤的扩展是非常容易的,只需要修改`皮肤.png`图片内容即可完成修改,每个图片(贴图)都代表一个不同的Skin皮肤,并且可通过代码API等方式让某个角色“穿上”皮肤。 | + | 角色皮肤的扩展是非常容易的,只需要修改`Skin.png`图片内容即可完成修改,每个图片(贴图)都代表一个不同的Skin皮肤,并且可通过代码API等方式让某个角色“穿上”皮肤。 |
![](asset: | ![](asset: | ||
行 19: | 行 19: | ||
### 皮肤贴图修改 | ### 皮肤贴图修改 | ||
- | 希望可视化修改《沙盘引擎》角色贴图,我们需要使用`Blockbench`工具进行绘图编辑,虽然这是一个建模类的工具,但我们只需要使用它【绘图功能】即可。 | + | 希望可视化修改《沙盘引擎》角色贴图,我们需要使用**[Blockbench工具](https:// |
![](asset: | ![](asset: | ||
- | 当我们启动工具后,只需要**打开[《沙盘引擎》皮肤模板工程](https:// | + | 当我们启动工具后,只需要**打开[《沙盘引擎》皮肤模板工程](https:// |
- | > 贴图修改时只需要**修改\拷贝**贴图Png文件即可,不需要重复拷贝`*.bbmodel(软件工程文件)`,只需要使用同一个工程文件,操作不同贴图时,**左下方贴图区域【右键——更改文件】**来替换贴图修改即可。 | + | > 贴图修改只需**修改\拷贝**贴图Png文件即可,不需要重复拷贝`*.bbmodel(软件工程文件)`,只需要使用同一个工程文件,操作不同贴图时,**左下方贴图区域【右键——更改文件】**来替换贴图修改即可。 |
当一张贴图绘画完成后,只需要打开Blockbench工程目录*(或软件左下方右键贴图——打开目录位置)*,找到刚刚编辑的贴图文件`*.png`,这就是制作完成后的贴图啦。 | 当一张贴图绘画完成后,只需要打开Blockbench工程目录*(或软件左下方右键贴图——打开目录位置)*,找到刚刚编辑的贴图文件`*.png`,这就是制作完成后的贴图啦。 | ||
**补充:因为Blockbench工具的一些小限制,使用部分功能时可能无法对“不同网格”之间的位置进行直接连续绘画,在这部分可能需要松开一下鼠标,在跨界处重新绘画。** | **补充:因为Blockbench工具的一些小限制,使用部分功能时可能无法对“不同网格”之间的位置进行直接连续绘画,在这部分可能需要松开一下鼠标,在跨界处重新绘画。** | ||
+ | |||
+ | ### 肤色自动匹配 | ||
+ | 《沙盘引擎》人形角色支持动态修改肤色,因此除非有特定需求,否则应该保持角色**皮肤部分**为默认颜色(工程文件默认肤色颜色),这样即可由脚本在游戏中动态替换颜色,而不需要为每个肤色都重做一套皮肤。 | ||
## 导入自定义皮肤 | ## 导入自定义皮肤 | ||
无论通过何种方式,当你手中已经有了一些`*.png`角色贴图后,如何将它导入到引擎模组中以供使用呢? | 无论通过何种方式,当你手中已经有了一些`*.png`角色贴图后,如何将它导入到引擎模组中以供使用呢? | ||
- | 只需要打开`模组目录\Data\Character`文件夹,将**贴图文件**放到此目录即可,唯独要注意的是**图片文件要按照以下规范命名**。 | + | 只需要打开`模组目录\Store\Data\Character`文件夹,将**贴图文件**放到此目录即可,唯独要注意的是**图片文件要按照以下规范命名**。 |
- | 和大多数沙盘引擎的ID管理机制一样,角色自定义内容的ID索引同样从`10000`开始,所以一个正确的文件命名方式为`ID_Name.png`,正确举例`10000_XXXSkin.png`。 | + | 和大多数沙盘引擎的ID管理机制一样,角色自定义内容的ID索引同样从`10000`开始,所以一个正确的文件命名方式为`CharacterType_ID_Name.png`,正确举例`0_10000_XXXSkin.png`。 |
- | 在引擎实际加载模组后,就会根据命名ID在内部建立索引机制,如果没有检测到导入问题(如ID重复是不行的),ID10000(举例)就被成功导入到角色皮肤列表了,开发者可通过API等方式将`Character.Skin = 10000; | + | > **注意:此处的`CharacterType`代表角色皮肤的生物种类,通常情况下应该填写`0`表示为人形角色。** |
+ | |||
+ | 在引擎实际加载模组后,就会根据命名ID在内部建立索引机制,如果没有出现异常情况(如ID重复是不行的),ID10000(举例)就被成功导入到角色皮肤列表了,开发者可通过API等方式将`Character.Skin = 10000; | ||
**如果通过API等方式修改角色时没有反应,请检查是否导入时报错或者贴图格式异常。** | **如果通过API等方式修改角色时没有反应,请检查是否导入时报错或者贴图格式异常。** | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
</ | </ |