返回案例页

Project / Case File

Snap Shot

一个基于 React + TypeScript + Three.js 的 60 秒街机反应射击原型,最近刚写完并已经挂上了在线试玩。

2D 反应射击 Demo 2026 独立开发 / 交互原型 Live Demo

Overview

这个案例在做什么

Snap Shot 是我最近写的一支轻量游戏原型。核心目标不是做一款内容庞杂的完整游戏,而是把“瞄准、射击、击中反馈、连击节奏、全屏沉浸感”这条体验链先打通,让它在浏览器里真正可玩。

Challenge

我想解决的问题

在很短的制作周期里,我更在意的是先把一个可玩的闭环做扎实,而不是把玩法写成文档后停在草图阶段。问题在于,射击手感、分数反馈、暂停恢复和界面节奏只要有一环松掉,整个 demo 就会显得发虚。

Approach

我是怎么把它做出来的

我用 Three.js 的正交相机搭出 2D 训练场,把 React 负责的 UI 状态和游戏循环拆开处理,再补上命中粒子、分数字样、倍率变化、本地最高分与全屏暂停逻辑,让它既像一个练手原型,也有足够明确的游玩节奏。

Outcomes

这次沉淀下来的东西

  • 完成了可在线打开即玩的 GitHub Pages demo。
  • 实现了 60 秒单局循环、五类靶子、连击倍率和本地最高分保存。
  • 把 React 19、TypeScript 和 Three.js 收成一套适合快速做互动原型的组合方式。