# 【开发者自荐】BongoCat - 开源桌宠实时响应鼠标和键盘事件，使用纯C彻底重新实现

**URL:** https://meta.appinn.net/t/topic/91151
**Category:** 发现频道
**Tags:** linux, windows
**Created:** [2026 年9 月 2 日 12:34 UTC](https://meta.appinn.net/t/topic/91151 "2026-09-02T12:34:08Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 2 日 12:34 UTC](https://meta.appinn.net/t/topic/91151/1 "2026-09-02T12:34:08Z")

</div>

## 软件名称

BongoCat

## 应用平台

windows, macos,linux

## 推荐类型

【开发者自荐】

## **是否收费**

开源免费

## 一句简介

跨平台桌宠，实时响应鼠标与键盘操作

## 应用简介

基于纯C重新实现的开源桌宠

 ![1](https://h2cdn.appinn.me/original/3X/0/3/03b78d274efe2711524bd89778d58bfa491497df.jpeg)

https://player.bilibili.com/player.html?isOutside=true&aid=117257690680110&bvid=BV1QDYX69EJL&cid=41825861681&p=1
## 官方网站

> **[BongoCat 官网｜跨平台桌宠，实时响应鼠标与键盘操作](https://bongocat.pet/)**
>
> BongoCat 官方网站：新一代超轻量、硬件加速桌面伴侣。

> **[GitHub - vladelaina/BongoCat: 🩷 💘C × SDL3 × OpenGL, stir it up, mash it...](https://github.com/vladelaina/BongoCat)**
>
> 🩷 💘C × SDL3 × OpenGL, stir it up, mash it together! Bong~ Bongocat!!! Don't be shy, join here🧸: https://discord.gg/vf8jqnattk

* * *

去年12月份的的时候和佬们分享了[我是如何 **用纯C仅用100kb** 就是实现了runcat的 **托盘动画**](https://meta.appinn.net/t/topic/78368)，同时还支持 **自定义GIF** ❗  
 ![mmexport1785240802160](https://h2cdn.appinn.me/original/3X/1/8/1855979cb70414bc3b0a8575b93495cd706da74c.gif)

记得刚开始做[Catime](https://github.com/vladelaina/Catime)的时候有一个 **心结** :pleading_face:，就是[纯C来做ui真的是一种灾难](https://cati.me/about)，

 ![image](https://h2cdn.appinn.me/original/3X/3/e/3ecd84844e3ac72ce658e627556c69678b5e8cfc.jpeg)

当时的想法是语言本身的问题，毕竟…

 ![Screenshot_20260902_114843_com_tencent_mobileqq_PublicTransFragmentActivity](https://h2cdn.appinn.me/original/3X/2/f/2fa834c1a09768f4b8b0530649e48983c6a05bb3.jpeg)

Catime的第一版Ui自然就是跟上个世纪的 **老古董** 一样 :rofl: 丑，是真的丑！

 ![image](https://h2cdn.appinn.me/original/3X/d/2/d2ce7af768f4680a947be726566522f8cd736d00.jpeg)

后续虽然引入了 **Windows Common Controls 6.0** 带来了些看起来现代的外观，但是

 ![image](https://h2cdn.appinn.me/original/3X/b/3/b34258f2dc326a94ecf2503e0820bbc0839a13a8.jpeg)  
唔~咋说呢，看起来就是稍微 **好了那么一点点** ，但是看起来这不依然还是个 **老古董** 嘛 🫪，而且在win10上这个是没有的，导致win11像个 **老古董** ，win10 则像个 **远古遗迹** 🗿

之前为了控制Catime的体积在 **1mb** 以下，曾考虑用 **CSS** 实现字体样式，但是…这压根不可能，所以就搓了些 **GDI自绘** 的样式临时凑合着作为一个过渡方案  
 ![freecompress-catime](https://h2cdn.appinn.me/original/3X/5/b/5b5d8e391cbb78daf9d239c9b688620632e22dfb.gif)

### 然后前段时间也不知道哪根筋搭对了，我突然想：既然我都能直接渲染样式了，那我为什么不干脆试试直接画ui呢？:clown_face:ui他不就是几张图往一起一摞，再写点交互逻辑嘛！对吧对吧对吧！！！结果发现实现起来只是需要处理的交互逻辑多了一点而已，比样式的实现简单实在是太多了！

 ![image](https://h2cdn.appinn.me/original/3X/e/2/e2d60c5a6fed79f93e0204d4d10c71404eb0396a.png)

 ![image](https://h2cdn.appinn.me/original/3X/2/e/2e5c4525b084252822ff209a18e6da506293c476.png)

* * *

## 正在这个时候 🫪

跟一位给 BongoCat 做模型的朋友唠嗑，聊着聊着才知道——BongoCat 的 **mver 和 tauri 两个版本也陆续停更了**

我当时寻思： **啊？这…那…要不我来试试？** :thinking:

毕竟 Catime 这边咱还有还有个“体积必须小于 1 MB”的硬性限制（哈哈哈，因为感觉这样可以给自己挑战感），UI 能发挥的空间确实比较有限，既然 BongoCat 这边刚好空出来了，那不如…… **我来折腾一下？** :face_savoring_food:

 ![wechat](https://h2cdn.appinn.me/original/3X/5/e/5e855cca31f360eeee35bf498cab5fd06c98afef.jpeg)

## 来吧，那我们直接来看成品吧，注意接下来你看到的所有的ui全部都是用纯C写:double_exclamation_mark:

> 啥？你这咋还有C++？
> 
> 因为 **live2d** 的 **Cubism Native Framework** (可以理解为让模型动起来的 **骨架** )本身 **提供的是C++ 接口** ，所以我们专门写了一层C++来完成模型加载、动作更新和渲染，再通过C ABI接回整个C项目，也就是说，C++只被隔离在live2d适配层，ui和其余应用主体依然全部都是C！！！

> **[GitHub - vladelaina/BongoCat: 🩷 💘C × SDL3 × OpenGL, stir it up, mash it...](https://github.com/vladelaina/BongoCat)**
>
> 🩷 💘C × SDL3 × OpenGL, stir it up, mash it together! Bong~ Bongocat!!! Don't be shy, join here🧸: https://discord.gg/vf8jqnattk

 ![image](https://h2cdn.appinn.me/original/3X/e/d/ed0f7737b051ce2fbc86f306fc1ae423127b63f9.png)

![demo](https://h2cdn.appinn.me/original/3X/4/c/4c8f82df7bf8c0558467f9596726c865fe29d328.webp)

1. 偏好设置  

2. 模型  

3. 快捷键  

4. 关于  

## :star_struck:需要模型？欢迎访问我们的官网：[bongocat.pet](https://bongocat.pet/models)

> 我们与优秀的模型师携手，为佬们带来丰富的免费模型，持续探索更多有趣的桌面体验！  
> 如果喜欢某位作者的作品，别忘了前往作者主页点个关注，感谢佬的支持喵❗
> 
> 📦 使用Cloudflare R2存储，点击即可直接下载！！无需跳转网盘， **没有任何网盘推广和广告** ，干净利落 :face_savoring_food:

 ![image](https://h2cdn.appinn.me/original/3X/0/6/0678e8a760264762edc009fe6682cb60abc4dd6b.jpeg)

[![models](https://h2cdn.appinn.me/original/3X/4/4/44dd3a533fb31407e39b679f4fcbcfc377e20702.webp)](https://bongocat.pet/models)

# 如果只是改个外观ui啥的那也太无聊了吧 :face_savoring_food:

## 首先就是来到我们最擅长的资源占用 :heart_on_fire:

 ![image](https://h2cdn.appinn.me/original/3X/a/d/ad57c58d35dadfc50e0c8979a998b5a239f168e3.jpeg)

> 怎么还有2.7%的cpu占用！！！？，因为这个虚拟机 :laughing:

### 只有5mb！ **纯原生** ，还 **跨平台** ❗

 ![image](https://h2cdn.appinn.me/original/3X/1/2/1203a0f52eef9829ed6833739293c0725e6fd85a.jpeg)

## OBS捕获优化

大部分情况可以直接捕获❗无需要扣绿幕，同时任务栏不会有软件的logo :face_savoring_food:

 ![image](https://h2cdn.appinn.me/original/3X/1/2/1212e55909cf4521f2ea4fbdff7e146010c6020c.jpeg)

### 由于OpenGL的问题还有有一部的几率出现无法直接捕获的问题，我们也可以应对 :face_savoring_food:

 ![image](https://h2cdn.appinn.me/original/3X/d/7/d715b31df6e39a4a1fb442d2792c480362c82c81.jpeg)

> 哈哈哈，实在是太喜欢这个开关了，左侧就是背景颜色的选择，优雅~

## 更加方便的换 **模型！表情！动作！**

> 以前换模型，表情，动作都需要打开设置或者用快捷键，现在只需要两步了！ **鼠标右键** 然后 **选择就行**  
> 同时还有 **鼠标滚动** 直接调整 **缩放** （哈哈哈，这块是从Catime学过来的），按住 **Ctrl+滚动** 就是调整 **透明度**

 ![image](https://h2cdn.appinn.me/original/3X/6/b/6bfee6687b7e6394fd0ef0b7d3324cbceb073173.jpeg)

# 就这？那你这不过只是在修复了tauri版本的bug而已啊，本质不就是一个换壳吗:exclamation_question_mark: :enraged_face:

## 以前的模型是这样的

> 就是感觉桌宠只是在乱动

![未开](https://h2cdn.appinn.me/original/3X/6/b/6b595ff761211ebf66396b32cc9ff1db224055e9.webp)

## 现在:double_exclamation_mark:

> 先吐槽一下这块的逻辑 **磨了开发者一个多星期** ，工作量远比想的特别麻烦！！基本就是慢慢的 **磨** 出来的，就是不断地去试参数 🫪 **人都麻了**
> 
> 但是这一切都是 **特别值得的** ，桌宠会 **盯着鼠标所在的位置看** ，同时 **桌宠的鼠标** 是和 **用户的鼠标在屏幕上的位置** 对应的！:two_hearts:
> 
> 现在！就是 **真的互动了** :face_savoring_food:

![开了以桌宠为中心](https://h2cdn.appinn.me/original/3X/7/9/79670a9995f51cb0ef1e5366fefcc07df092caf6.webp)

# 同时支持 **mver** 版本和 **tauri** 版本模型❗

当前市面上出现了一个很 **割裂** 的事，几乎所有的 **模型师发的BongoCat模型** 用的都是 **mver版本** 的，同时tauri版本用的是 **单独的一套模型组织格式** 🫪

也就是说如果你想要新的模型在tauri版本上使用那么你需要经过 **一次模型的转换**

 ![Screenshot_20260902_155641_tv_danmaku_bili_UnitedBizDetailsActivity](https://h2cdn.appinn.me/original/3X/7/9/79b4aa38803d0d3f0145c98dc4c5517706aac7eb.jpeg)

在做bongocat的时候我也遇到了 **一样的纠结** ，是走 **mver版本的** 模型组织格式还是 **tauri版的** ，想来想去，算了算了，不想了

![giphy](https://h2cdn.appinn.me/original/3X/8/2/822755b70dc7461a2fdb5c779fc19d491e7d9238.webp)

**我全都要** :laughing:

 ![image](https://h2cdn.appinn.me/original/3X/f/4/f4f0f580db77af1cfac042807d9a68cb34220cc1.jpeg)

:double_exclamation_mark: **同时支持mver版本** 和t **auri版本** 的 **模型格式** :double_exclamation_mark:

:smiling_face_with_three_hearts:  
**更棒的是** 我们会将 **tauri** 版本的重新 **转换为mver版本** 保存，所以我们的模型格式走的还是mver版本 :face_savoring_food:，这样方便佬们直接将导入的模型 **继续在mver版本上使用** :growing_heart:

# 一个二次元老婆多无聊，必须一群啊 :laughing:

> 支持同时拥有8个“老婆” :laughing:  
> ![image](https://meta-edge.appinn.com/images/transparent.png)

 ![image](https://h2cdn.appinn.me/original/3X/6/5/6504d5291646289ddb4687949461e9176d8ab152.jpeg)

> 当前演示所用 **虚拟机大小** ，相信佬们的cpu应该能做到 **更低** :face_savoring_food:

 ![image](https://h2cdn.appinn.me/original/3X/d/a/daa0d9191d39d7f146982cbb3bd80917cf6be125.jpeg)

# 最后祝佬们玩的开心 :laughing:，如果能点击star那实在是太感谢了:two_hearts:

> **[GitHub - vladelaina/BongoCat: 🩷 💘C × SDL3 × OpenGL, stir it up, mash it...](https://github.com/vladelaina/BongoCat)**
>
> 🩷 💘C × SDL3 × OpenGL, stir it up, mash it together! Bong~ Bongocat!!! Don't be shy, join here🧸: https://discord.gg/vf8jqnattk

本次演示的 **所有的模型** 都可以在我们的官网上 **下载** :face_savoring_food:

# [bongocat.pet](https://bongocat.pet/)

---

<div class="post-metadata">

### 作者： ![TecNico](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/tecnico/32/78882_2.png) [@TecNico](https://meta.appinn.net/u/TecNico)
#### 发布日期： [2026 年9 月 2 日 12:37 UTC](https://meta.appinn.net/t/topic/91151/2 "2026-09-02T12:37:42Z")

</div>

顺便再写个c实现的 live2D 编辑器让大家自己就能爽做皮肤如何？

---

<div class="post-metadata">

### 作者： ![Qingwa](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/qingwa/32/58632_2.png) [@Qingwa](https://meta.appinn.net/u/Qingwa)
#### 发布日期： [2026 年9 月 2 日 12:47 UTC](https://meta.appinn.net/t/topic/91151/3 "2026-09-02T12:47:19Z")

</div>

欢迎欢迎，居然写了这么长

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 2 日 13:01 UTC](https://meta.appinn.net/t/topic/91151/4 "2026-09-02T13:01:45Z")

</div>

猜猜看写了多久 :exploding_head:麻了啊

---

<div class="post-metadata">

### 作者： ![VictoryRoad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/victoryroad/32/58964_2.png) [@VictoryRoad](https://meta.appinn.net/u/VictoryRoad)
#### 发布日期： [2026 年9 月 2 日 13:36 UTC](https://meta.appinn.net/t/topic/91151/5 "2026-09-02T13:36:01Z")

</div>

但……恕我直言，这帖子的内容排版看着真头疼。甚至……感觉整篇文章弄得跟马路上的小广告似的。

1. 标题结构混乱，层次不清晰。
2. 滥用标题与加粗样式。适当使用粗体字可突出重点，但通篇大量用加粗则会让重点不突出，影响观感。
3. emoji 过多，显得排版不整洁。
4. 意义不明的引用块
5. 链接不宜用加粗、放大的标题格式文本。论坛有 Onebox 功能，将 URL 单独放在一行，并与上下文间隔一个空行，即可将 URL 渲染为带标题、摘要和封面的小卡片，更加美观。

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 2 日 13:57 UTC](https://meta.appinn.net/t/topic/91151/6 "2026-09-02T13:57:03Z")

</div>

还别说，真的感觉像电线杆的广告了 :smiling_face_with_tear:

---

<div class="post-metadata">

### 作者： ![VictoryRoad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/victoryroad/32/58964_2.png) [@VictoryRoad](https://meta.appinn.net/u/VictoryRoad)
#### 发布日期： [2026 年9 月 2 日 14:03 UTC](https://meta.appinn.net/t/topic/91151/7 "2026-09-02T14:03:09Z")

</div>

鄙人愚见，这类文章按 “S.T.A.R.” 规则写就很好：

1. Situation：情景，要干什么
2. Target：目标，希望怎么样
3. Action：行动，干了什么
4. Result：结果，最终效果怎么样

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 2 日 14:50 UTC](https://meta.appinn.net/t/topic/91151/8 "2026-09-02T14:50:53Z")

</div>

受教了受教了， :exploding_head:刚毕业的大学生，真不太会写哈哈哈

---

<div class="post-metadata">

### 作者： ![a523084467](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/a523084467/32/7534_2.png) [@a523084467](https://meta.appinn.net/u/a523084467)
#### 发布日期： [2026 年9 月 2 日 15:54 UTC](https://meta.appinn.net/t/topic/91151/9 "2026-09-02T15:54:42Z")

</div>

读完了，加星！

---

<div class="post-metadata">

### 作者： ![asuka](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/asuka/32/57941_2.png) [@asuka](https://meta.appinn.net/u/asuka)
#### 发布日期： [2026 年9 月 2 日 17:58 UTC](https://meta.appinn.net/t/topic/91151/10 "2026-09-02T17:58:17Z")

</div>

不同版本的实现共用一个名字也是蛮头痛的

---

<div class="post-metadata">

### 作者： ![XJW\_XJW](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/xjw_xjw/32/52644_2.png) [@XJW\_XJW](https://meta.appinn.net/u/XJW_XJW)
#### 发布日期： [2026 年9 月 2 日 23:19 UTC](https://meta.appinn.net/t/topic/91151/11 "2026-09-02T23:19:16Z")

</div>

没点进来以前还以为是steam上的那个

 ![image](https://h2cdn.appinn.me/original/3X/e/2/e261fec30cf611e0ab31de87e2a73dac6f72caa6.jpeg)

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 3 日 01:16 UTC](https://meta.appinn.net/t/topic/91151/12 "2026-09-03T01:16:32Z")

</div>

感谢老板，感谢老板，之前好像在哪里看到过老板的头像来着

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 3 日 01:17 UTC](https://meta.appinn.net/t/topic/91151/13 "2026-09-03T01:17:03Z")

</div>

唔~确实有点，bongo cat c ？哈哈哈

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 4 日 06:34 UTC](https://meta.appinn.net/t/topic/91151/14 "2026-09-04T06:34:08Z")

</div>

![image](https://h2cdn.appinn.me/original/3X/5/8/58b9b42cb5e31628f708b56296ecc67dae8e038c.png)

尝试开始解决就是游戏的时候鼠标无法捕获的问题

---

<div class="post-metadata">

### 作者： ![TecNico](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/tecnico/32/78882_2.png) [@TecNico](https://meta.appinn.net/u/TecNico)
#### 发布日期： [2026 年9 月 4 日 07:11 UTC](https://meta.appinn.net/t/topic/91151/15 "2026-09-04T07:11:12Z")

</div>

`bongoCat.c`吧。  
就跟 `llama.cpp` 命名法一样～

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 4 日 07:23 UTC](https://meta.appinn.net/t/topic/91151/16 "2026-09-04T07:23:35Z")

</div>

唔~唔~唔~唔~

---

<div class="post-metadata">

### 作者： ![yzhcat](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/y/46a35a/32.png) [@yzhcat](https://meta.appinn.net/u/yzhcat)
#### 发布日期： [2026 年9 月 4 日 09:43 UTC](https://meta.appinn.net/t/topic/91151/17 "2026-09-04T09:43:52Z")

</div>

![PixPin_2026-09-04_17-42-15](https://h2cdn.appinn.me/original/3X/9/f/9fce633d74b128fedf9052ea73433834a7f9e8a1.jpeg)win11 窗口有黑边哇

---

<div class="post-metadata">

### 作者： ![kingzd](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/k/4bbf92/32.png) [@kingzd](https://meta.appinn.net/u/kingzd)
#### 发布日期： [2026 年9 月 4 日 09:56 UTC](https://meta.appinn.net/t/topic/91151/18 "2026-09-04T09:56:46Z")

</div>

虽然。。但是。。。。看诊很好玩哈

---

<div class="post-metadata">

### 作者： ![vlad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/vlad/32/58666_2.png) [@vlad](https://meta.appinn.net/u/vlad)
#### 发布日期： [2026 年9 月 4 日 10:10 UTC](https://meta.appinn.net/t/topic/91151/19 "2026-09-04T10:10:05Z")

</div>

非常感谢反馈！！这个是 openGL 渲染的问题，会很快解决！！

---

<div class="post-metadata">

### 作者： ![xxtui](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/xxtui/32/71623_2.png) [@xxtui](https://meta.appinn.net/u/xxtui)
#### 发布日期： [2026 年9 月 4 日 10:16 UTC](https://meta.appinn.net/t/topic/91151/20 "2026-09-04T10:16:56Z")

</div>

v佬的领域又扩张了

[下一页](https://meta.appinn.net/t/topic/91151.md?page=2)
