今天是 2025 年圣诞节,大过节的,又没对象,本来想躺平,结果看到满屏的圣诞树🎄突然手痒想整活。咱就是说,如果我告诉你,我一行代码都没手敲 ,光靠跟 AI 唠嗑、提要求,就搓出来一个能手势控制、能传照片、还自带飘雪音效的 3D 粒子圣诞树 ,你信吗?别不信,这真不是科幻片,全是靠 Gemini 3 搞定的。以前写代码是"搬砖",这次我体验了一把当"甲方爸爸"的快乐。我不用管 Three.js 的底层数学公式,也不用懂 MediaPipe 的算法,我只负责 "提需求" 和 "挑刺" 。
下面给大伙复盘一下,我是怎么一步步把 Gemini 3 "逼"成顶级前端工程师的。
1.起手式:先整出个轮廓
一开始我也没整那些虚头巴脑的技术文档,指令给得特简单直接:
我:"哥们,写个 HTML ,用Three.js做一棵豪华的粒子圣诞树,背景要黑色,粒子要是金色的,搞得高 > 级点。
Gemini 3 反应贼快,直接甩给我一个完整的 HTML 文件。打开一看,虽然简陋了点,但架子是立住了。
效果截图:
2.审美调优:太直男了,得换!
第一版看着太冷冰冰了,不够节日。于是我开始在这个对话里继续追加需求(Gemini 3记得住上下文,知道我在改同一个东西,完全小白在尝试的时候不必重复指令)。
我:"不行,太冷淡。换个风格!我要樱花粉、大红、暖黄,再来点珍珠白。粒子别光是圆球,整点花活,什么钻石啊、礼盒啊、星星形状的都加上。背景也别死黑,要那种暗红到深黑的渐变,懂我意思吧?"
Gemini 3 展现出了相当成熟的审美直觉。 我完全不需要去调色板里找具体的 Hex 色值,它似乎能精准捕捉到文字描述背后的视觉情绪,直接给出了 0xff9eb5 ------这不是那种随便生成的"死亡芭比粉",而是一种带有灰度、通透且高级的樱花色,这种对"氛围感"的把控力确实可以。
效果截图:
3.注入灵魂:我要钢铁侠的那种操作感
静态树看两眼就腻了。我想搞点复杂的交互,这要是自己写,光是手势识别就得调半天 bug。
我: "上强度了啊!我要加手势控制!
✊ 握拳 的时候,粒子聚合成树;
🖐 手张开 ,粒子要'嘭'一下炸开变成星云,还能跟着手转;
👌 捏手指,要能把树上的照片抓取出来放大看。"
这对传统开发来说绝对是个大工程,但 Gemini 3 居然直接集成了 MediaPipe 视觉库,连握拳和捏合的判定阈值都帮我写好了。
效果截图:
✊ 握拳
🖐 手张开

👌 捏手指

4.细节狂魔:这就叫专业
最后阶段,我开始疯狂扣细节,基本就是在那"找茬"。
- 图片问题:"传上去的照片怎么被压扁了?能不能自适应一下比例?"
- 氛围感:"背景太素,给我加点飘落的爱心动画,要那种 Canvas 画出来的。
- 社交属性:"左上角加个我的摄像头画面,带个粉色框,我要把自己录进去。
- 手感:"现在的操作太灵敏了,晃得头晕,调低灵敏度,要那种豪车方向盘的阻尼感。
这块最让我惊讶的是,Gemini 3自动给我的摄像头画面加了镜像翻转(因为它知道自拍习惯),这种细节它是真懂啊!
折腾这一下午,我连 StackOverflow 的网页都没打开过,甚至 API 文档都没看。 用 Gemini 3 编程给我的感觉就是:思维方式变了 。以前即使有 AI,我们也得想"这句代码怎么写";现在完全变成了想 "我到底想要什么效果" 。
哪怕代码报错了(比如有时候库版本不对),直接把红字报错甩给它,它改得比我还快,所以说,别总觉得不会代码就干不了这行。只要脑洞够大,Gemini 3 就是你的神笔马房。
这是在网上刷到的比较全面的提示词,大家可以参考参考
提示词总结:基于手势控制的奢华 3D 圣诞树
- 角色设定 你是一位精通 Three.js、WebGL、计算机视觉 (MediaPipe) 和 UI 设计 的创意前端开发专家。
- 核心任务 编写一个包含 HTML、CSS 和 JavaScript 的单文件应用 (Single-file HTML)。该应用需要创建一个基于手势控制的 3D 粒子圣诞树,集成 MediaPipe 手势识别,并具备照片管理和音乐播放功能。
- 视觉与审美要求 整体风格:极致的奢华感、高级感(Grand Luxury)。背景为纯黑,核心配色为哑光绿 (Deep Green) + 香槟金 (Champagne Gold) + 深红 (Accent Red)。 渲染效果:使用 UnrealBloomPass 实现电影级的辉光效果。使用 RoomEnvironment 增强金属材质的反射质感。 粒子构成:圣诞树由数千个粒子组成,形状包括球体、正方体、糖果棍(TubeGeometry)和悬浮的尘埃粒子。 UI 设计:极简主义,使用衬线字体(如 Times New Roman / Cinzel),按钮采用半透明磨砂玻璃质感,带有金色边框。
- 功能模块要求 3D 场景与照片墙: 支持上传多张照片,照片需带有金色相框,作为粒子混入圣诞树中。 照片管理:增加"管理照片"功能,弹出一个网格视图,允许用户选择性删除某张照片(点击红色的 X),而不是一键清空。 背景音乐: 支持上传音频文件,自动循环播放。 按钮需具备"播放/暂停"的切换状态显示。 摄像头预览: 在屏幕右下角显示摄像头实时画面。 画面需做镜面翻转处理,并带有金色边框和状态指示灯。 全屏控制: 在屏幕右上角增加"全屏显示/退出全屏"按钮。 UI 布局: 主要功能按钮(添加照片、管理照片、添加音乐)集中在屏幕左下角。 所有界面文字使用中文。
- 交互与手势逻辑 (MediaPipe) 使用 MediaPipe HandLandmarker 进行手势识别,定义三种状态: 聚合态 (TREE):手势为握拳。所有粒子螺旋聚合,形成圣诞树形状。 散开态 (SCATTER):手势为张开五指。粒子在空间中无序漂浮。 边缘持续旋转:当手在散开态下移动时,根据手距离屏幕中心的距离控制旋转。手越靠边缘转得越快。旋转速率系数设定为 1.2(防止晕眩)。 聚焦态 (FOCUS):手势为捏合 (Pinch)。 智能抓取:计算屏幕中心区域(判定半径扩大至 0.55)内的照片,将最近的一张照片平滑飞至镜头前放大(放大倍数适中,约 2.8倍)。松开手后照片归位。
- 技术栈约束 使用 ES Modules (importmap) 引入 Three.js (v160+) 和 MediaPipe。 无跨域限制:确保代码可以直接本地双击 HTML 运行(处理好图片/纹理的加载逻辑)。 健壮性:增加加载动画(Loader),并处理没有摄像头权限时的异常情况。
大家圣诞快乐啊!🎄🌟赶紧去试试"捏"一个你自己的圣诞礼物吧

