> For the complete documentation index, see [llms.txt](https://sebun1.gitbook.io/skins/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sebun1.gitbook.io/skins/origin-zh-hans.md).

# 缘由

## 传统工作流程

在 GTFO 中使用皮肤其实并不是什么新鲜事，早在我了解到之前就已经有人在制作了。据我了解/学习，目前的皮肤制作流程大致如下：

1. 找到目标枪械对应部件的 Mesh。
2. 将这些 Mesh 导出。
3. 在 Blender 等软件中拼装好后，重新导出。
4. 将拼装好的网格体导入 Substance 3D Painter 等贴图软件。
5. 在软件中制作皮肤。
6. 导出贴图文件。
7. 在 `GTFO_Data` 中找到目标枪械部件对应的 `.asset` 文件并打开。
8. （可选）备份原生的 `.asset` 文件。
9. 将步骤 6 中导出的贴图写入我们皮肤版本的 `.asset` 文件。
10. 用修改后的文件替换 `GTFO_Data` 中的原始 `.asset` 文件。
    1. 至此，贴图安装完成。

## 流程的问题

这套流程用起来有几个让人头疼的地方：

1. 安装皮肤需要动到游戏文件，不是很便捷和安全[^1]。
   1. 皮肤也是游戏本身的一部分，重装游戏的时候皮肤还要重新安装。
2. 装了皮肤之后，想恢复原版外观只能重新校验游戏文件 — 除非你事先备份了 `.asset` 文件。
3. GTFO 的枪械部件在不同武器间是共用的，所以有时候给一把枪做皮肤，会误伤到其他共用同一部件的武器，让它们的外观变得奇怪。
   1. 修改了相同 `.asset` 文件的皮肤没办法同时用 — 要想并存，就得手动把两套皮肤的贴图都塞进同一个 `.asset` 文件内。
   2. 正因如此，来自不同作者的皮肤往往很难完美混搭。
   3. 同样的原因，有时候一个皮肤包里的皮肤没法只用一个。
      1. 就算理论上可以，也得自己搞清楚哪个 asset 文件管哪个部件，比较麻烦。
4. 维护 asset 文件本身也不是很友善 — 通常大家会自己整理一个表格，记录每个文件里都有什么，每次操作都要翻出来对照。

## 这个 Mod 解决了什么

本 Mod 目前[^2]把流程中的第 7 到第 10 步变得轻松多了，通过 [SkinGroup Editor](/skins/editor/editor.md) 来处理这些操作。皮肤也不会再因为游戏更新[^3]出问题。并且，上面提到的几个问题也可以完全解决。

[^1]: 和游戏版本不匹配的皮肤可能导致游戏无法启动或者枪械模型渲染出错

[^2]: 我有计划简化 Mesh 导出的环节，到时候第 1 至 3 步只需要在游戏里按一下按钮就能搞定，不再需要手动重新拼装了。

[^3]: 虽然先前有一次突如其来的更新导致很多皮肤有段时间无法使用了，但说实话这游戏大概率不可能再有更新了。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sebun1.gitbook.io/skins/origin-zh-hans.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
