# 💖 ThinkYou - 浪漫的3D星空表白应用 一个使用 Three.js 创建的浪漫3D星空场景,"我想你了"等表白文字会从远处飞向屏幕,营造出唯美的视觉效果。 ## ✨ 主要功能 ### 🌟 核心效果 - **动态文字消息**: "我想你了"、"想念你"、"好想你"、"爱你"等文字从远处飞向相机 - **美丽的文字框**: 每条消息都有发光的粉色边框和优雅的渐变背景 - **流畅的动画**: 文字在飞行过程中有轻微的漂浮效果 - **智能淡出**: 文字接近相机时会逐渐透明直到消失 ### 🌌 背景效果 - **动态星空**: 包含数千颗不同颜色的星星,缓慢旋转营造深邃感 - **流星效果**: 随机生成的流星从天空划过,每颗流星都有独特的颜色和轨迹 - **相机摇摆**: 相机轻微摇摆模拟真实观感 - **渐变背景**: 深邃的紫色到黑色渐变背景 ### 🎮 交互控制 - **播放/暂停**: 控制整个动画的播放状态 - **手动生成**: 点击按钮立即生成新的表白消息 - **速度调节**: 调整消息飞行的速度 (0.1x - 4x) - **星空密度**: 调整星星数量 (100 - 5000颗) - **键盘控制**: - `空格键`: 播放/暂停 - `回车键`: 生成新消息 - `H键`: 显示/隐藏控制面板 - `R键`: 重置场景 ### 🎨 视觉优化 - **响应式设计**: 完美适配各种屏幕尺寸 - **优雅的UI**: 半透明面板配合毛玻璃效果 - **发光效果**: 按钮、文字、边框的发光效果 - **流畅动画**: 60fps流畅动画,使用requestAnimationFrame优化 - **性能优化**: 智能的对象池管理,及时清理不需要的资源 ## 🚀 技术栈 - **React 19**: 现代化的React Hooks - **Three.js**: 3D图形渲染引擎 - **TypeScript**: 类型安全的开发体验 - **Tailwind CSS**: 现代化的CSS框架 - **Astro**: 静态站点生成器 ## 📱 使用方法 1. **启动项目**: ```bash pnpm dev ``` 2. **访问页面**: - 主页: `http://localhost:4321/` - 演示页: `http://localhost:4321/demos/base` 3. **控制操作**: - 使用左侧控制面板调整各种参数 - 使用键盘快捷键进行快速操作 - 右侧信息面板显示当前效果说明 ## 🎯 使用场景 - **表白神器**: 向心爱的人表达爱意 - **纪念日礼物**: 特殊日子的浪漫惊喜 - **网站装饰**: 为网站添加浪漫的背景效果 - **教学演示**: Three.js和React结合的教学案例 - **创意展示**: 展示3D编程技能的作品集 ## 🛠️ 自定义配置 ### 消息内容 在 `generateMessage` 函数中修改 `messages` 数组来自定义表白文字: ```typescript const messages = ['我想你了', '想念你', '好想你', '爱你', '❤️', '你的自定义文字'] ``` ### 颜色主题 在 `createTextGeometry` 函数中修改颜色配置: ```typescript // 边框颜色 context.strokeStyle = '#ff69b4' // 粉色 context.shadowColor = '#ff69b4' // 背景渐变 gradient.addColorStop(0, 'rgba(20, 20, 40, 0.9)') gradient.addColorStop(1, 'rgba(40, 20, 60, 0.9)') ``` ### 星空效果 在 `createStarField` 函数中调整星星的颜色分布和大小。 ## 🔧 性能优化 - 使用 `useCallback` 优化函数重新创建 - 智能的对象生命周期管理 - 及时清理不需要的Three.js资源 - 使用 `requestAnimationFrame` 实现流畅动画 - 响应式的星空密度控制 ## 📦 项目结构 ``` src/ ├── thinkyou/ │ └── index.tsx # 主要的Three.js组件 ├── styles/ │ ├── global.css # 全局样式 │ └── thinkyou.css # ThinkYou应用专用样式 └── pages/ ├── index.astro # 主页 └── demos/ └── base.astro # 演示页面 ``` ## 💝 特别说明 这个项目充满了对爱情的美好憧憬,每一个细节都经过精心设计,希望能为你的表白之路增添一份浪漫的色彩。无论是向心爱的人表达爱意,还是在特殊的日子里制造惊喜,这个应用都能成为你表达情感的完美工具。 愿所有的爱意都能被温柔以待,愿每一份真情都能得到回应。💖 --- *"我想你了" - 这简单的四个字,承载着最深的思念。*