1
0
Fork 0
gkms-localify-dmm-texture/TEXTURE_REPLACE_MERGED.md

117 lines
3.6 KiB
Markdown

# 纹理替换功能已集成
## 摘要
**gakumas-texture-TL** 文件夹的图片替换功能已完全融合进主项目。现在只需使用 **version.dll** 一个文件即可同时实现:
- ✅ 文字翻译
- ✅ 纹理/图片替换
**不再需要** xinput1_3.dll!
## 快速开始
### 1. 启用功能
编辑 `resource/localizationConfig.json`:
```json
{
"enableTextureReplace": true
}
```
### 2. 配置资源映射
编辑 `resource/local-files/textures/asset_mapping.txt`:
```
img_general_comic_0001=comic/1ko/img_general_comic_0001.png
img_general_comic4_0000=comic/4ko/img_general_comic4_0000.png
```
### 3. 放置图片
将图片文件放到 `resource/local-files/textures/` 对应子目录:
```
textures/
├── comic/1ko/ # 一格漫画
├── comic/4ko/ # 四格漫画
├── general_report/ # 好感度档案
├── ui/ # UI按钮
└── tutorial/ # 教程图片
```
### 4. 使用
只需将 `version.dll` 放到游戏目录即可!
## 目录结构变化
```
gkms-localify-dmm/
├── gakumas-texture-TL/ # 可以保留作为参考,不再需要编译
├── src/
│ └── GakumasLocalify/
│ ├── TextureReplace.h # 新增: 纹理替换模块
│ ├── TextureReplace.cpp # 新增: 纹理替换实现
│ ├── Hook.cpp # 修改: 集成纹理Hook
│ └── config/
│ ├── Config.hpp # 修改: 添加enableTextureReplace
│ └── Config.cpp # 修改: 配置加载/保存
├── resource/
│ ├── localizationConfig.json # 修改: 添加enableTextureReplace配置项
│ └── local-files/
│ └── textures/ # 新增: 纹理替换资源目录
│ ├── README.md # 使用说明
│ ├── asset_mapping.txt # 资源映射配置
│ ├── comic/
│ ├── general_report/
│ ├── ui/
│ └── tutorial/
└── docs/
└── TEXTURE_REPLACE_INTEGRATION.md # 详细集成文档
```
## 核心改动
### 新增文件
1. `src/GakumasLocalify/TextureReplace.h/cpp` - 纹理替换核心模块
2. `resource/local-files/textures/README.md` - 使用说明
3. `docs/TEXTURE_REPLACE_INTEGRATION.md` - 详细集成文档
### 修改文件
1. `src/GakumasLocalify/Hook.cpp` - 集成AssetBundle Hook
2. `src/GakumasLocalify/config/Config.hpp` - 添加配置项声明
3. `src/GakumasLocalify/config/Config.cpp` - 实现配置加载
4. `resource/localizationConfig.json` - 添加enableTextureReplace
## 技术亮点
- **统一Hook系统**: 复用现有的AssetBundle Hook
- **配置集成**: 纳入统一的配置管理系统
- **日志集成**: 使用统一的日志输出
- **目录规范**: 遵循项目现有的目录结构
- **零依赖**: 无需额外的DLL文件
## 迁移建议
如果你之前使用 xinput1_3.dll:
1. 复制 `gakumas-texture-TL/gakumas-local-texture/asset_mapping.txt``resource/local-files/textures/`
2. 复制所有图片文件到 `resource/local-files/textures/` 对应子目录
3. 在配置文件中启用 `enableTextureReplace`
4. 删除 `xinput1_3.dll`
5. 只使用 `version.dll`
## 详细文档
查看 [docs/TEXTURE_REPLACE_INTEGRATION.md](docs/TEXTURE_REPLACE_INTEGRATION.md) 了解:
- 完整技术细节
- Hook工作流程
- 调试方法
- 常见问题解答
## 开发者备注
- 集成完成日期: 2025年11月26日
- xinput1_3.dll 的所有功能已通过 version.dll 实现
- gakumas-texture-TL 文件夹可以保留作为参考,但不再需要编译使用