AllenCoder/v8-engine-3d

★ 1Forks 0JavaScriptGitHub ↗Compare

README

Interactive 3D V8 Engine Educational Webpage (交互式 3D V8 发动机教学网页)

一个基于 WebGL / Web 技术的交互式 3D V8 发动机仿真教学页面。通过高精度的 3D 模型和流畅的交互,生动展示 V8 发动机的内部构造、曲轴活塞联动以及经典的四冲程工作原理。

👉 [在线预览 (GitHub Pages)] (注:如已部署,此处可填写您的 GitHub Pages 链接)


🌟 核心功能

  • ⚡ 实时 3D 联动动画:精细还原曲轴、连杆、活塞、火花塞及进排气门的协同运作,真实模拟四冲程循环。
  • 📚 交互式教学模式:详细解析进气、压缩、做功(点火)、排气四个冲程的物理过程,配以精准的光效变化(如点火爆发、尾气排出)。
  • 🔍 自由探索与操作:
    • 旋转、缩放、平移:支持鼠标/触控手势全方位自由观察。
    • 速度调节:支持无级调节发动机转速,或暂停单步观察。
  • 💥 爆炸拆解视图 (Exploded View):一键拆解发动机组件,清晰展示缸体、活塞组、曲轴、气门组的相对位置。
  • 🔬 透视/X-Ray 模式:半透明外壳设计,直观透视内部活塞运动与曲轴旋转。
  • 📱 响应式玻璃拟态 UI:现代化极简 UI 设计,完美适配手机、平板、桌面端显示。

🛠️ 技术栈

  • HTML5 & CSS3:用于构建结构与毛玻璃质感(Glassmorphism)的控制面板,配合 CSS 自定义动画。
  • Vanilla JavaScript (原生 JavaScript):处理核心渲染循环、UI 事件交互与状态流转。
  • Three.js / Canvas 3D (基于 engine3d.js):负责 3D 场景管理、材质光影调整、网格物体的几何构建以及骨骼联动动画。

📂 项目结构

v8-engine-3d/
├── index.html       # 网页主入口与 UI 结构定义
├── style.css        # 全局样式与现代玻璃拟态组件样式
├── ui.js            # UI 交互、模式切换与事件流控制逻辑
└── engine3d.js      # 3D 渲染引擎核心、模型构建与联动动画逻辑

🚀 快速开始

本项目为纯前端无服务器依赖应用,无需复杂的安装配置即可在本地运行。

本地运行

  1. 克隆或下载本仓库到本地。
  2. 双击 index.html 即可直接在现代浏览器中打开,或者使用 IDE 的 Live Server 插件/本地静态服务器(如 http-server)启动以获得最佳体验。

📸 效果展示

1. 自由探索与 3D 渲染效果

V8 发动机 3D 交互预览

界面提供极其丰富的实时光影表现,可以清晰地看到活塞与曲轴的工作状态。

2. 四冲程教学模式

每个冲程都会伴随详细的文字介绍和颜色标识(进气-蓝色,点火-红色,排气-灰色),帮助学习者快速理解内燃机机制。

3. 爆炸视图与透视模式

将错综复杂的发动机部件拉开,清晰呈现各部分装配逻辑。


🤝 参与贡献

欢迎提交 Issue 或 Pull Request 来共同完善这个 3D 教学项目!

  1. Fork 本仓库。
  2. 新建分支:git checkout -b feature/your-feature-name。
  3. 提交修改:git commit -am 'Add some amazing feature'。
  4. 推送到分支:git push origin feature/your-feature-name。
  5. 创建 Pull Request。

Contributors

AllenCoder

Issues