引言
本文将介绍如何将 Gemini 生成的 3D 手部粒子追踪应用部署到本地计算机,依托于浏览器运行,实现随时随地访问。
准备工作:环境搭建
在开始部署前,我们需要确保本地计算机具备必要的运行环境:
- Node.js 环境
- 这是运行现代 JavaScript 应用的基础,推荐安装 v16 及以上版本
- 下载地址:https://nodejs.org/
安装完成后,打开终端验证:
node -v # 应显示 v16.x.x 或更高版本
npm -v # 应显示 7.x.x 或更高版本

- 现代浏览器
- 推荐 Chrome 或 Edge 浏览器,对 WebGL 和摄像头 API 支持更好
步骤一:获取应用代码
- 从项目源下载代码压缩包(通常是 ZIP 格式)
- 解压到本地任意目录
通过终端进入解压后的项目目录:
cd /path/to/particle-hand-3d # 替换为实际的项目路径

步骤二:安装项目依赖
该应用使用了多个现代前端库,包括 React、Three.js 和 MediaPipe 等,需要通过包管理器安装:
在项目根目录下运行安装命令:
npm install
常见问题解决:若安装失败,尝试使用管理员权限运行终端。网络问题可尝试切换网络或使用 npm 镜像:
npm install --registry=https://registry.npm.taobao.org。依赖冲突可删除node_modules和package-lock.json后重新安装。
等待安装完成(首次安装可能需要几分钟),安装过程中会显示依赖包的下载和安装进度。成功完成后,项目目录会新增 node_modules 文件夹(存放所有依赖)。

步骤三:启动开发服务器
完成上述准备后,即可启动本地开发服务器:
运行启动命令:
npm run dev
等待服务器启动,成功后会显示类似信息:
VITE v6.2.0 ready in 300ms ➜ Local: http://localhost:3000/ ➜ Network: http://192.168.1.100:3000/

打开浏览器,访问终端显示的本地地址(通常是 http://localhost:3000)。

步骤四:授权与使用
首次访问应用时,需要完成摄像头授权:
- 浏览器会弹出摄像头权限请求,点击'允许'
- 稍等片刻(首次加载需要下载 MediaPipe 模型)
- 应用启动后会显示:
- 全屏的 3D 粒子场景
- 左下角的摄像头实时画面(带手部关键点标记)
- 当你将手放在摄像头前时,粒子会跟随手部动作形成 3D 效果
注意:如果摄像头无法启动,检查:浏览器权限是否已授予、其他应用是否占用了摄像头、防火墙设置是否阻止了浏览器访问摄像头。

项目结构解析
了解项目结构有助于你更好地理解和定制应用:
particle-hand-3d/
├── components/ # React 组件
│ ├── HandParticles.tsx # 3D 粒子效果组件
│ └── VideoOverlay.tsx # 摄像头画面与手部标记组件
├── node_modules/ # 项目依赖
├── dist/ # 生产构建产物(构建后生成)
├── .env.local # 环境变量(需手动创建)
├── index.html # 入口 HTML 文件
├── App.tsx # 应用主组件
├── package.json # 项目配置与依赖
└── vite.config.ts # 构建工具配置
核心功能模块:
- MediaPipe:处理手部检测与关键点识别
- Three.js:创建 3D 场景和粒子效果
- React + React Three Fiber:UI 框架与 3D 渲染集成
常见问题与解决方案
- 应用启动后白屏
- 检查浏览器控制台(F12)是否有错误
- 确认 Three.js 相关依赖是否安装成功
- 尝试清除浏览器缓存
- 手部追踪不灵敏
- 确保光线充足
- 保持手部在摄像头可见范围内
- 避免背景过于复杂
- 端口被占用
- 更改 vite 配置中的端口:修改
vite.config.ts中的server.port - 或终止占用端口的进程后重新启动
- 更改 vite 配置中的端口:修改
- 依赖安装错误
- 升级 Node.js 到最新稳定版
- 尝试使用
yarn替代npm安装依赖
总结
通过以上步骤,你已经成功将 Gemini 生成的 3D 手部粒子追踪应用部署到了本地计算机。这个过程涵盖了从环境准备到应用运行的完整流程,适用于大多数基于 Vite 和 React 的现代 Web 应用部署。
这类 AI 生成的应用不仅展示了大语言模型在代码生成方面的能力,也为开发者提供了快速实现创意的新思路。你可以在此基础上进一步定制粒子效果、调整交互方式,甚至结合 Gemini API 添加更智能的交互功能。


