手撕一个 Galgame 神器——Shub-Niggurath Project
一、想法
Galgame 我们大概可以分为好用的 Galgame 和好玩的 Galgame,但是如果你把好玩的 Galgame 拿来用的话,有时候会十分让人着急。如果你躺在床上,一只手还在按压键盘实际上是很费神费力的,抓一只鼠标其实算是不错的解决方案,但是组合按键太少,难以高速解决快进快退存档读档等复杂的操作,在此之前我被安利的是使用 PPT 翻页笔,我 20 包邮买到的翻页笔有 Page Up,Page Down,Tab 和 Enter 功能,其中的激光可以拿来逗猫,也导致我电量耗的比较快(雾),基本可以满足日常需要,但是手感有些过软,用起来并不舒服,在某 K 的忽悠下开始制作了这个项目。
二、命名
这个很重要,才不会告诉你起名花的时间比设计 PCB 的时间还长
莎布·尼古拉丝是克苏鲁神话中的外神,有着许多触手,以及滴著黏液的大嘴,跟 Galgame 很配,听起来也很厉(zhong)害(er)的原因,所以选用了这个名字作为这个项目的名称。
三、外观设计
微软的 Surface Dial 的转盘设计很让人眼红,躺在床上也是比较容易进行的操作(单指旋转),所以以 Dial 的为原型开始了设计。
第一版设计图其实基本上和 Dial 一样,很普通的一个圆形的而已,但是并做不到使用多个快捷键的需求(在 X 的时候还要想办法切换配置文件是很扫兴的吧...),所以设计了第二版。
第二版把圆形的底部改为了正方形,并在转盘下方增加了一排 4 Key 的薄膜键盘(机械键盘轴比较占地方),可以满足配置文件和快捷键的快速使用与切换。转盘部分使用了常见的 EC 11 旋转编码器,购买和开发都很方便,淘宝上可以很轻易的买到梅花柄的金属或者塑料的大的旋转编码器转盘,也算是降低了物料成本吧。
建模的过程在 B 站直播过了,没看到就没看到吧 hhhhh
四、电路部分设计
开发成本有两部分,分别是物料成本和时间成本。既要保证物料成本不会太高,还要保证不要花费太多时间,那么有没有一种...
抱歉走错片场了,为了节省开发时间,我们选择了使用 Sparkfun 设计的搭载 ATmega32U4 的 Arduino Pro Micro,即减少了物料成本(我不会焊接贴片元件),又减少了时间成本(有官方制作的 Keyboard&Mouse 库来使用),也算是折中的方案吧(做个玩具要求那么高干啥)。
RGB 即是正义!没有 RGB 和咸鱼有什么区别。剩下的时间就是简单的画一下 P(zhuan)C(jie)B(ban),之前一直用 Eagle 这次换到 Altium Designer 还有点不舒服的样子。(吐槽我灵魂走线的拖出去打死)

五、加工与成品
一样惯例的 FR-4,黑油白字,有铅喷锡,过孔盖油,1.6 板厚加工,焊接完成后的样子(已经装在底座上了):

至于体验,emmmm...只能说还好,有根连接线算是败笔,平时剪视频时拿来用也可以,至于为啥没有成品图呢?因为 4 Key 薄膜键盘忘记带了...所以我接出来了几个按键用,看起来不太美观,就藏起来了hhhhhh
作者:Jimmy Tian
原文链接:https://twznow.com/archives/43/
手撕一个 Galgame 神器——Shub-Niggurath Project的更多相关文章
- NN入门,手把手教你用Numpy手撕NN(2)
这是一篇包含较少数学推导的NN入门文章 上篇文章中简单介绍了如何手撕一个NN,但其中仍有可以改进的地方,将在这篇文章中进行完善. 误差反向传播 之前的NN计算梯度是利用数值微分法,虽容易实现,但是计算 ...
- Netty实现高性能IOT服务器(Groza)之手撕MQTT协议篇上
前言 诞生及优势 MQTT由Andy Stanford-Clark(IBM)和Arlen Nipper(Eurotech,现为Cirrus Link)于1999年开发,用于监测穿越沙漠的石油管道.目标 ...
- 手撕RPC框架
手撕RPC 使用Netty+Zookeeper+Spring实现简易的RPC框架.阅读本文需要有一些Netty使用基础. 服务信息在网络传输,需要讲服务类进行序列化,服务端使用Spring作为容器.服 ...
- NN入门,手把手教你用Numpy手撕NN(一)
前言 这是一篇包含极少数学推导的NN入门文章 大概从今年4月份起就想着学一学NN,但是无奈平时时间不多,而且空闲时间都拿去做比赛或是看动漫去了,所以一拖再拖,直到这8月份才正式开始NN的学习. 这篇文 ...
- 手撕公司SSO登陆原理
Single Sign-on SSO是老生常谈的话题了,但部分同学对SSO可能掌握的也是云里雾里,一知半解.本次手撕公司的SSO登陆原理,试图以一种简单,流畅的形式为你提供 有用的SSO登陆原理. 按 ...
- NN入门,手把手教你用Numpy手撕NN(三)
NN入门,手把手教你用Numpy手撕NN(3) 这是一篇包含极少数学的CNN入门文章 上篇文章中简单介绍了NN的反向传播,并利用反向传播实现了一个简单的NN,在这篇文章中将介绍一下CNN. CNN C ...
- 看年薪50W的架构师如何手写一个SpringMVC框架
前言 做 Java Web 开发的你,一定听说过SpringMVC的大名,作为现在运用最广泛的Java框架,它到目前为止依然保持着强大的活力和广泛的用户群. 本文介绍如何用eclipse一步一步搭建S ...
- 手撕ES6--Promise
手撕ES6--Promise:https://www.jianshu.com/p/0925eae38d2c 手写一个Promise,附源码分析:https://blog.csdn.net/weixin ...
- 编译原理--05 用C++手撕PL/0
前言 目录 01 文法和语言.词法分析复习 02 自顶向下.自底向上的LR分析复习 03 语法制导翻译和中间代码生成复习 04 符号表.运行时存储组织和代码优化复习 05 用C++手撕PL/0 在之前 ...
随机推荐
- luogu P1272 重建道路
嘟嘟嘟 这好像是一种树上背包. 我们令dp[i][j] 表示在 i 所在的子树中(包括节点 i)分离出一个大小为 j 的子树最少需割多少条边. 那么转移方程就是 dp[u][j] = min(dp[u ...
- Kali-linux免杀Payload生成工具Veil
Veil是一款利用Metasploit框架生成相兼容的Payload工具,并且在大多数网络环境中能绕过常见的杀毒软件.本节将介绍Veil工具的安装及使用. 在Kali Linux中,默认没有安装Vei ...
- HDU 3938 Portal (离线并查集,此题思路很强!!!,得到所谓的距离很巧妙)
Portal Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- Bluetooth® Low Energy Beacons
Bluetooth® Low Energy Beacons ABSTRACT (abstract ) 1.This application report presents the concept of ...
- sharepoint 搜索报错
配置sharepoint 拓扑架构,将两台服务器一起来爬网. 配置如下: $hostA = Get-SPEnterpriseSearchServiceInstance -Identity " ...
- HTML小记
1.页面内跳转 当<a>元素用于页面内的锚点跳转时,应该先为该页面设置一些锚点,而定义锚点有两种办法: 通过<a>元素的name属性来定义,如:<a name=" ...
- 使用XWAF框架(1)——Web项目的代码分层
建议在Eclipse环境下使用XWAF框架来开发用户的Web项目,并遵循以下步骤和约定. 1.获取XWAF框架压缩包文件 程序员点击下列地址免费下载XWAF框架的压缩包文件:XWAF框架压缩文件 2. ...
- GCD 多线程技术
Grand Central Dispatch(GCD)是异步执行任务的技术之一.一般将应用程序中记述的线程管理用 的代码在系统级中实现.开发者只需要定义想执行的任务并追加到适当的Dispatch Qu ...
- ubuntu18.10手动安装mysql5.5
一.问题描述 本人使用的电脑安装的是ubuntu18.10系统,使用aptitude install mysql-server命令安装mysql时,总是无法正常安装,无法正常配置mysql-serve ...
- activemq的搭建、启动,简单demo
一.搭建activeMQ 在官网下载window版本,直接解压就可以. 二.启动 在解压完的目录/bin/win64,双击击activemq.bat,运行完之后打开浏览器,输入http://127.0 ...