打造专属BongoCat:零基础模型定制与社区贡献全指南
你是否也曾想过让屏幕上的Bongo Cat拥有独特外观?是否希望分享自己设计的猫咪模型却不知从何下手?本文将带你从零开始完成模型定制、格式转换到社区贡献的全流程,让你的创意作品被全球用户看见。
模型定制基础
BongoCat支持三种官方模型类型,分别适配不同交互场景:
- 标准模型:src-tauri/assets/models/standard - 基础静态展示模型
- 键盘模型:src-tauri/assets/models/keyboard - 响应键盘输入的互动模型
- 手柄模型:src-tauri/assets/models/gamepad - 适配游戏手柄操作的模型
每个模型目录包含必要的配置文件和资源:
.model3.json- 模型主配置文件.moc3- 模型数据文件.cdi3.json- 模型物理碰撞配置texture_*.png- 纹理图片资源live2d_motion*.motion3.json- 动作配置文件
模型文件结构解析
以标准模型为例,核心文件结构如下:
standard/
├── cat.model3.json # 模型定义
├── demomodel.moc3 # 模型数据
├── demomodel.cdi3.json # 碰撞配置
├── demomodel.1024/ # 纹理图集
│ ├── texture_00.png
│ ├── texture_01.png
│ └── texture_02.png
├── live2d_expression*.exp3.json # 表情配置
└── live2d_motion*.motion3.json # 动作配置
模型加载逻辑在src/utils/live2d.ts中实现,通过load()方法读取模型配置并初始化:
public async load(path: string) {
this.initApp()
this.destroy()
const files = await readDir(path)
const modelFile = files.find(file => file.name.endsWith('.model3.json'))
if (!modelFile) {
throw new Error('未找到模型主配置文件,请确认模型文件是否完整。')
}
// ...加载模型的后续逻辑
}
自定义模型制作步骤
1. 基础资源准备
- 纹理图片:建议使用3张2048×2048的PNG图片,按身体部位拆分绘制
- 动作设计:规划至少3种基础表情和5种互动动作
- 配置文件:复制官方模型的JSON配置作为模板修改
2. 模型转换流程
若已有其他格式模型,可使用官方提供的在线转换工具: 🔗 BongoCat模型在线转换工具
转换后的文件需验证完整性,确保包含所有必要的配置文件。
3. 本地测试方法
完成模型制作后,通过以下步骤在本地测试:
- 将模型文件夹放入
src-tauri/assets/models目录 - 启动开发环境:
pnpm install
pnpm tauri dev
- 在应用设置中切换至自定义模型
- 测试所有交互动作和表情切换是否正常
模型加载状态管理在src/composables/useModel.ts中实现,通过handleLoad()方法处理模型加载和错误反馈。
社区贡献规范
贡献前准备工作
- 环境搭建:
# 安装依赖
pnpm install
# 启动开发服务器
pnpm tauri dev
- 代码规范:
- 遵循conventional-changelog提交规范
- 使用ESLint进行代码检查:
pnpm lint - 确保所有交互功能在三大平台(Windows/macOS/Linux)测试通过
模型提交 checklist
提交模型前请确认:
- [ ] 所有文件使用UTF-8编码
- [ ] 纹理图片压缩至合理大小(单张不超过2MB)
- [ ] 提供完整的动作集(至少包含 idle、press、release 状态)
- [ ] 包含模型预览图(200×200像素)
- [ ] 填写模型信息文档(作者、版本、说明)
Pull Request 流程
- Fork项目仓库
- 创建特性分支:
git checkout -b model/your-model-name - 提交模型文件至
src-tauri/assets/models/目录 - 更新模型列表:src/constants/index.ts
- 提交PR,标题格式:
feat: add [model-type] model [model-name]
高级模型优化技巧
性能优化建议
- 纹理图集合并:将多个小图合并为图集减少绘制调用
- 动作简化:非关键动作使用简化曲线减少计算量
- 分层加载:优先加载低分辨率纹理,再异步加载高清资源
交互体验增强
通过src/composables/useModel.ts中的方法可以自定义交互逻辑:
// 设置参数值控制模型状态
public setParameterValue(id: string, value: number | boolean) {
const coreModel = this.getCoreModel()
return coreModel?.setParameterValueById?.(id, Number(value))
}
常见可调整参数:
ParamMouseX/ParamMouseY- 控制模型朝向CatParamLeftHandDown/CatParamRightHandDown- 控制手部动作ParamAngleX/ParamAngleY- 控制模型旋转角度
社区资源与交流
模型资源库
Awesome-BongoCat 仓库收集了社区创建的各类模型: 📦 Awesome-BongoCat
在线转换工具
将其他格式模型转换为BongoCat兼容格式: 🔗 BongoCat模型转换工具
社区支持渠道
遇到技术问题可通过以下方式获取帮助:
- QQ群:加入交流群
- Issue跟踪:GitHub Issues
- 贡献指南:.github/CONTRIBUTING.md
贡献案例展示
社区用户贡献的模型案例:
蒸汽朋克风格模型
- 特点:金属质感纹理,齿轮联动动画
- 交互:按键时齿轮转动特效
- 文件结构:src-tauri/assets/models/steampunk
像素艺术模型
- 特点:8-bit风格像素画,复古动画
- 优化:简化纹理至256色,降低资源体积
- 动作:添加复古游戏风格的按键反馈
总结与展望
通过本文介绍的方法,你已经掌握了BongoCat模型定制的全流程。无论是修改现有模型还是创建全新设计,都可以通过社区贡献机制分享你的作品。
BongoCat项目持续欢迎各类贡献,包括但不限于:
- 新模型设计
- 模型转换工具改进
- 交互逻辑优化
- 文档翻译与教程编写
立即开始你的创作,让全球用户使用你设计的BongoCat模型!
所有贡献者将被列入项目贡献者名单,优质模型创作者将获得社区荣誉徽章。详细贡献指南请参考.github/CONTRIBUTING.md。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
请把这个活动推给顶尖程序员😎本次活动专为懂行的顶尖程序员量身打造,聚焦AtomGit首发开源模型的实际应用与深度测评,拒绝大众化浅层体验,邀请具备扎实技术功底、开源经验或模型测评能力的顶尖开发者,深度参与模型体验、性能测评,通过发布技术帖子、提交测评报告、上传实践项目成果等形式,挖掘模型核心价值,共建AtomGit开源模型生态,彰显顶尖程序员的技术洞察力与实践能力。00
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
MiniMax-M2.5MiniMax-M2.5开源模型,经数十万复杂环境强化训练,在代码生成、工具调用、办公自动化等经济价值任务中表现卓越。SWE-Bench Verified得分80.2%,Multi-SWE-Bench达51.3%,BrowseComp获76.3%。推理速度比M2.1快37%,与Claude Opus 4.6相当,每小时仅需0.3-1美元,成本仅为同类模型1/10-1/20,为智能应用开发提供高效经济选择。【此简介由AI生成】Python00
Qwen3.5Qwen3.5 昇腾 vLLM 部署教程。Qwen3.5 是 Qwen 系列最新的旗舰多模态模型,采用 MoE(混合专家)架构,在保持强大模型能力的同时显著降低了推理成本。00- RRing-2.5-1TRing-2.5-1T:全球首个基于混合线性注意力架构的开源万亿参数思考模型。Python00