HypeRate Unity / Godot / Unreal Engine 游戏插件——用心率驱动游戏玩法
核心想法
为什么心率只能是直播画面的附加信息?为什么不把它做成游戏本身的玩法机制?
HypeRate 官方和社区为 Unity、Godot、Unreal Engine 提供了插件,让开发者可以把玩家的实时心率直接接入游戏逻辑——你的心跳决定游戏难度、影响角色状态、参与最终评分。
三大引擎支持对比
| 引擎 | 插件状态 | 下载位置 | 难度 |
|---|---|---|---|
| Unity | ⭐ 官方维护 | Unity Asset Store | ⭐⭐ 中等 |
| Godot | ⭐ 官方维护 | Godot Asset Library | ⭐ 简单 |
| Unreal Engine | ⭐ 官方维护 | UE Marketplace + GitHub | ⭐⭐ 中等 |
Unity 插件
插件定位
Unity 插件是 HypeRate 官方维护的核心插件,被 35000+ 开发者使用。功能最全、文档最完善。
安装步骤
- 打开 Unity Asset Store,搜索 "HypeRate Heart Rate Plugin"
- 导入到 Unity 项目
- 在场景中创建一个 HypeRateManager 对象
- 在 Manager 里输入你的 HypeRate ID
- 运行游戏 → 心率数据自动注入
获取心率数据(C#)
using HypeRate;
public class PlayerController : MonoBehaviour {
void Update() {
// 获取实时心率
int currentHR = HypeRateManager.Instance.CurrentHeartRate;
// 获取心率分区 (1-5)
int zone = HypeRateManager.Instance.CurrentZone;
// 例子:心率 > 150 时,敌人速度加快
if (currentHR > 150) {
enemy.speed = 1.5f;
}
// 例子:心率 Zone 1(放松)时,角色回血
if (zone == 1) {
playerHealth += Time.deltaTime * 5f;
}
}
}
实战玩法创意
创意 1:恐怖游戏——心率越高敌人越活跃
// 心率高时增加敌人刷新频率和移动速度
float hrFactor = currentHR / 150f; // 0-1 归一化
enemySpawnRate = baseRate * (1 + hrFactor);
enemySpeed = baseSpeed * (1 + hrFactor * 0.5f);
enemyAIAggression = baseAggression * (1 + hrFactor);
创意 2:健身游戏——心率决定训练效果
// Zone 2(有氧训练)时,能量补充最快
// Zone 5(极限)时,耐力消耗最快
float efficiency = 1f;
if (zone == 2) efficiency = 1.5f; // 有氧区效率 +50%
else if (zone >= 4) efficiency = 0.5f; // 高压区效率 -50%
创意 3:评分系统——心率越稳定分数越高
// 心率波动越小(平稳),最终得分越高
float stability = 1f - Mathf.Abs(hrVariance) / 50f;
finalScore = baseScore * stability;
Godot 插件
Godot 插件更轻量,GDScript 语法让它比 Unity 版本更容易上手。
安装步骤
- 打开 Godot Asset Library → 搜索 "HypeRate"
- 下载并安装插件
- 在项目设置里启用插件
- 场景里添加 HypeRate Node → 输入 HypeRate ID
获取心率数据(GDScript)
extends PlayerController
func _process(delta):
var hr = $HypeRate.current_heart_rate
var zone = $HypeRate.current_zone
# 心率 > 140 时增加移动速度
if hr > 140:
speed = base_speed * 1.3
else:
speed = base_speed
Godot 适合的场景
Godot 开源、轻量、适合独立游戏开发者。用心率数据做小游戏特别合适——比如:
- 跳绳游戏:心率低时跳得慢,心率高时跳得快
- 节奏游戏:心率决定游戏 BPM
- 健身引导:心率 Zone 2 时显示绿色鼓励,Zone 4 时显示红色警告
Unreal Engine 插件
UE 插件是蓝图友好的,不用写 C++ 也能接心率数据。
安装步骤
- 从 UE Marketplace 或 GitHub 下载插件
- 解压到 UE 项目的
Plugins/目录 - UE 编辑器里启用插件
- 在蓝图里添加 HypeRate 节点
蓝图用法
UE 的优势是纯蓝图可视化:
事件:Heart Rate Updated
→ 获取 BPM
→ 分支(BPM > 150?)
├─ 是 → Set Enemy Speed (×1.5)
└─ 否 → Set Enemy Speed (×1.0)
完全不用写代码,拖拽节点就行。
插件底层原理
三个引擎的插件底层都是连接 HypeRate 的 WebSocket API:
HypeRate APP / 桌面端
↓(蓝牙连接心率设备)
HypeRate 云端(API 网关)
↓(WebSocket 推送)
引擎插件
↓(事件/委托/蓝图节点)
游戏逻辑
隐私注意事项
- 心率数据从 HypeRate 设备 → 云端 → 游戏插件,全程 HTTPS/WSS 加密
- 游戏服务器端只接收你本地插件转发的数据,不直接连 HypeRate
- 插件不记录、不上传心率数据,游戏关闭后数据即清除
- 适合作为"单人游戏体验增强",但不建议在多人在线游戏中强制(部分玩家可能不想公开生理数据)
发布时的用户提示
如果你的游戏依赖 HypeRate 插件,在 Steam 商店页 / APP 描述里说明:
本游戏可选用 HypeRate 心率设备增强体验。连接心率带或智能手表后,你的实时心率将影响游戏难度。不连接也可以正常游玩(默认中等难度)。
这样不想用的玩家不会被强制,想玩的玩家可以体验完整功能。