一名初一学生用AI开发《末日突围》3D游戏的实践过程,Visual Studio Code+DeepSeek+GPT

一名初一学生用AI开发《末日突围》3D游戏的实践过程

目录

一、概述. 2

二、游戏特点. 5

三、游戏框架结构. 6

四、游戏技术路线. 7

五、结束语. 8


 

视觉演示:

https://www.bilibili.com/video/BV1XDhK6nECm/

下载地址:

链接: https://pan.baidu.com/s/1-FNyggbGuJ3xxRkWBBkKOw?pwd=v2nu。 提取码: v2nu

开源地址:

https://github.com/wxzz/Apocalyptic-Escape-Game

https://gitee.com/wxzz/Apocalyptic-Escape-Game


 

一、概述

  《末日突围》是一名初一学生在AI编程助手辅助下独立开发的3D第一人称战术射击游戏。游戏基于WebGL技术,以末日废土为背景,玩家在废弃封锁区中抵御僵尸围攻或与AI雇佣兵混战。游戏可在浏览器中直接运行,也可通过Windows桌面程序运行。

  生化生存模式需通关10波僵尸,第6波起出现精英僵尸(疾速/铁壁/自爆),第10波迎战血量10000的巨型Boss。

1.启动画面

图 启动画面 2.辅助设置

图 辅助设置

3.武器库

图 武器库

4.射击画面

图 射击画面

5.数据统计

图 数据统计

二、游戏特点

 

2.1 零基础起步,AI全程辅助

  开发者为初一学生,有一定C语言开发的基础,但是没有工程化开发经验。开发中以AI为"结对编程伙伴",学生负责提出需求、描述玩法、验证效果,AI负责生成代码、调试排错、优化性能。开发工具环境:Visual Studio Code+DeepSeek+GPT。

2.2 双模式独立玩法

  • 生化生存:波次制防御,10波递进难度,含精英怪与Boss战。
  • 死斗模式(已经进行,后期开发):清剿12名AI雇佣兵,AI自由混战,随机配备步枪/狙击/霰弹/手枪。

两种模式共享移动、射击、武器切换等基础操作,但敌人行为、关卡节奏和胜利目标完全不同。

2.3 完整的战术与武器系统

  • 移动:WASD移动、Shift冲刺(耗耐力+产生脚步声)、Ctrl蹲伏、空格跳跃。
  • 瞄准:右键开镜、开镜+Shift屏息(消晃动,2秒/5秒冷却)、F侧瞄、Alt概略瞄准。
  • 战术:Q/E左右探头、X切换射击模式(单发/连发/三连发)、I武器检视。
  • 武器:手Q、步Q、狙击Q、霰弹Q、战术刀,支持滚轮/侧键/数字键切换;持重武器降低移动速度。

2.4 部分3D模型手工建模

  游戏模型采用混合来源:角色动作来自公开库(GLB骨骼动画),另有部分3D模型由开发者手工建模完成。对初一学生而言,手工建模需学习多边形建模、UV展开、材质贴图等专业知识,这些模型虽精度有限,但承载了创作者对游戏世界的独特理解。

2.5 完整外围系统

  • 启动菜单:模式选择、武器库、幸存者档案入口。
  • 武器库:浏览武器、查看属性、3D预览、装备配置。
  • 设置面板:鼠标灵敏度、音量、瞄准辅助开关、退出对局。
  • 战绩统计:击杀数、通关次数记录,支持重置。
  • 游戏HUD:血条、耐力条、弹药、换弹进度、准星、罗盘、波次、Boss血条、伤害方向指示。

三、游戏框架结构

  项目采用分层架构,各层职责明确:

3.1 表现层(index.html + style.css)

  index.html定义全部DOM结构,包括渲染容器、HUD界面、覆盖层、菜单、武器库、设置、教程、结算等元素。style.css负责视觉样式,采用深色军事风格,以暗绿和橙红为主配色。

3.2 逻辑层(game.js)

  game.js为游戏核心(约40万字符,ES Module规范),包含:3D场景管理、玩家控制器(视角/移动物理/姿态)、武器系统(射击/换弹/切换/后坐力)、第一人称手臂动画(Mixamo骨骼驱动,状态交叉淡入淡出)、敌人AI(僵尸追踪/雇佣兵战术)、波次管理、碰撞检测、输入系统、UI交互、音效系统。

3.3 桌面封装层(main.js + Electron)

  main.js为Electron主进程,负责创建窗口、加载index.html、管理生命周期。启动时窗口最大化,提供沉浸式体验。通过nodeIntegration配置可访问本地文件系统和Node.js API。

3.4 资源层

  包含GLB格式3D模型(按动作分目录)、favicon.ico应用图标、JSON配置文件(武器属性、敌人参数、平衡数据)。

3.5 构建层(package.json)

  通过npm管理依赖,electron-builder打包为Windows便携版(portable)EXE,无需安装即可运行。

四、游戏技术路线

  技术选型围绕"轻量、开源、浏览器原生可运行"原则,全部基于免费Web技术。

4.1 3D渲染:Three.js

  • 场景搭建:场景、透视相机、WebGL渲染器、自适应尺寸。
  • 模型加载:GLTFLoader加载GLB模型与骨骼动画。
  • 动画系统:AnimationMixer管理动画播放与状态切换。
  • 射线检测:Raycaster实现射击命中与物体拾取。
  • CSS2D叠加:CSS2DRenderer在3D空间渲染2D标签(伤害数字等)。

  通过importmap实现模块本地映射,无需打包工具即可使用标准import语法。

4.2 模型与动画:GLTF/GLB

  采用GLTF 2.0二进制格式(GLB),体积小、加载快、支持骨骼动画。角色动作按武器姿态分类(基础射手包/手枪动作包/其他动作包)。第一人称手臂系统加载仅含骨骼的GLB文件,将手臂骨架挂载到相机,按动作状态切换动画,切换时0.15秒交叉淡入淡出;仅应用旋转轨道、忽略位移轨道以防骨架飞走,通过调校偏移量确保手臂在视角中位置正确。

4.3 模型优化:gltf-transform

  使用@gltf-transform工具链对GLB模型预处理,包括网格压缩、纹理压缩、合并重复材质、移除未使用资源,减小体积、提升加载性能。

4.4 前端:HTML5 + CSS3 + ES Module

  纯HTML+CSS实现UI,无前端框架,结构简单、加载快速。采用ES6+模块规范(import/export),支持箭头函数、解构、类、顶层await等现代语法。

4.5 输入交互:Pointer Lock + 键鼠事件

  使用Pointer Lock API锁定鼠标实现视角旋转,点击画面锁定、Esc释放。键盘通过keydown/keyup维护按键状态表,在主循环中更新玩家行为。支持鼠标灵敏度调节(0.5x–2.5x)。

4.6 桌面打包:Electron + electron-builder

  Electron基于Chromium+Node.js,将网页封装为桌面应用。electron-builder配置为Windows便携版目标,生成单一EXE,双击即玩。

4.7 AI辅助开发流程

  • 需求拆解:自然语言描述 → AI拆解为技术方案。
  • 代码生成:AI生成JS/HTML/CSS,学生复制到项目。
  • 调试排错:粘贴错误信息 → AI分析原因并给修复方案。
  • 性能优化:AI识别瓶颈,提供优化建议。
  • 迭代改进:试玩发现问题 → 与AI对话持续完善。

  "人提需求+AI写代码+人验效果"的循环,大幅提升开发效率,让零基础学生在短时间内完成功能完整的3D游戏。

五、结束语

  《末日突围》证明了AI时代青少年编程教育的全新可能。在AI辅助下,一名初一学生无需先花数年学习编程语言和图形学,就能从"我想做个游戏"的想法出发,逐步将创意变为现实。

  学生收获的不仅是一款可运行的游戏,更是需求拆解、与AI高效沟通、测试验证、迭代改进的能力,以及对编程思维的直观理解。当编程门槛被AI降低,创造力和想象力成为核心竞争力。

  未来计划继续完善:增加更多武器、地图和敌人类型,尝试多人联机,并将开发经验分享给更多对游戏开发感兴趣的同学。在代码的世界里,每个少年都可以成为突围的英雄。


 

《末日突围》完整玩法与操作说明

本文档为《末日突围》全维度游戏指南,包含游戏模式、按键操作、战术技巧、武器逻辑、界面释义、核心规则、游玩注意事项,新手、老手均可快速查阅使用。

📑 目录

一、游戏模式详解

游戏包含生化生存模式多人死斗模式两种玩法,规则、目标与特色完全独立,具体细节如下:

1. 生化模式(僵尸生存)

以波次形式抵御僵尸围攻,坚守存活并清空所有波次敌人即可通关。

  • 核心目标:在僵尸围攻下存活,击杀当前波次全部僵尸,解锁下一波挑战
  • 胜利条件:成功通关全部10个波次
  • 失败条件:玩家生命值归零,挑战结束
  • 模式特色:

○       僵尸数量随波次递增,难度逐步提升

○       第6波开始刷新精英僵尸(疾速僵尸、铁壁僵尸、自爆僵尸)

○       第10波刷新终极Boss巨型僵尸(基础血量10000)

○       Boss存续期间,会持续刷新普通僵尸小兵,增加通关难度

2. 死斗模式(AI雇佣兵对战)

清空地图内所有敌方AI雇佣兵,获取对局胜利。

  • 核心目标:击杀地图中全部AI雇佣兵敌人
  • 胜利条件:成功歼灭全部12名敌方AI
  • 失败条件:玩家生命值归零,对局失败
  • 模式特色

○       敌方AI为自由混战机制,AI之间会互相攻击、独立作战

○       每名AI随机配备武器

○       AI具备智能战术逻辑,可实现走位规避、自主换弹、掩体躲藏等操作

二、移动与视角控制

  基础移动、视角操控按键,适配全模式通用操作:

按键

功能说明

W / A / S / D

角色前后左右基础移动

鼠标移动

旋转游戏视角、调整瞄准方向

Shift

奔跑冲刺(移动速度提升,会产生脚步声)

空格键

角色跳跃

Ctrl

下蹲(压低身形隐蔽性提升,小幅降低移动速度)

三、基础战斗操作

  全武器通用战斗按键,涵盖射击、瞄准、换弹、武器切换等核心操作:

按键

功能说明

鼠标左键

枪械开火 / 近战武器挥刀攻击

鼠标右键

开镜瞄准(仅适配带瞄准镜的武器)

R

手动换弹

鼠标滚轮

顺序循环切换所有携带武器

鼠标侧键(前进)

循环切换主武器

鼠标侧键(后退)

快速切换副武器 / 近战武器

四、进阶战术动作

  高阶战术按键,适用于对枪、卡点、精准瞄准等实战场景:

按键

功能说明

Q

左向探头(掩体左侧探身瞄准,探头状态无法奔跑)

E

右向探头(掩体右侧探身瞄准,探头状态无法奔跑)

开镜+Shift

屏息瞄准(消除准星晃动,持续2秒,冷却5秒)

X

切换射击模式(单发/连发/三连发,仅限适配武器)

F

主瞄/侧瞄模式切换(侧瞄无准星,射击精度小幅提升)

Alt

侧向概略瞄准(枪身侧倾,精度介于腰射与开镜之间)

I

武器检视(查看武器细节,检视期间无法射击)

Tab

打开战况面板,查看击杀数、剩余敌人等对局数据

五、武器切换完整逻辑

 

1. 鼠标侧键循环切换顺序

  主武器 → 手枪(副武器)→ 战术刀(近战)→ 循环回主武器

2. 数字键快捷切换(精准定位)

按键

切换目标

1

手枪(副武器)

2

当前装备主武器

3

战术刀(近战武器)

4

投掷物(已装备时生效)

六、游戏界面功能说明

  游戏全局UI界面释义,快速掌握对局状态信息:

显示区域

展示内容

左下角

角色生命值条(HP)+ 实时血量百分比;附带异常状态图标(骨折/流血/止痛等)

右下角

当前弹匣弹药数 / 后备总弹药数

右上角

击杀数;生化模式显示当前波次、死斗模式显示剩余存活敌人数

屏幕中央

射击准星(开镜、侧瞄状态下样式自动变化)

准星下方

换弹进度指示器,直观查看换弹剩余时间

七、核心游戏规则

 

1. 通用全局规则

  • 玩家生命值归零直接判定死亡,对局/波次失败
  • 换弹期间无法射击、无法切枪、无法冲刺、无法跳跃,全程硬直
  • 受到伤害时,屏幕对应方向边缘会闪烁红光,提示敌人攻击来源

2. 生化模式专属规则

  • 当前波次所有僵尸全部击杀后,自动开启下一波挑战,无手动跳转操作
  • 第6波为精英僵尸刷新节点,随机刷新各类特殊僵尸,难度大幅提升
  • 第10波击杀终极Boss后,直接通关本局游戏

八、游玩关键注意事项

    • 移速差异:武器重量影响移动速度,手枪、战术刀移速最快,狙击枪、轻机枪等重型武器移速最慢
    • 瞄准机制互斥:开镜瞄准与侧瞄模式无法同时开启,开启其一自动关闭另一模式
    • 侧瞄特性:侧瞄无可视化准星,适合中近距离概略射击,精度优于腰射、弱于开镜
    • 屏息机制:开镜状态下按住Shift屏息,可消除准星抖动,持续2秒,结束后有5秒冷却时间
    • 脚步声机制:奔跑冲刺会产生明显脚步声,可被AI敌人捕捉并吸引仇恨,偷袭、卡点时建议关闭冲刺
    • 武器检视限制:任意时间可按I检视武器,但检视动作期间无法进行任何攻击操作

参考文章

(1)硬件网关:https://mp.weixin.qq.com/s/iKMqn62YIhBlXjGtY2wKXQ

(2)物联网(IOT):https://mp.weixin.qq.com/s/5u4L8fItaFpIbVYOlxbmGg

(3)视觉分析(Vision):https://mp.weixin.qq.com/s/SiiuXTTGplTAERRYyCmGCQ

(4)大模型智库(AiMind):https://mp.weixin.qq.com/s/SH_q2k_zbQ-pcd05zj86-g

(5)大模型智能问数(AiInsight): https://mp.weixin.qq.com/s/A1fIQq_w9c8SW9aEWVIsgw

(6)小i助手:https://mp.weixin.qq.com/s/5UCoYsDAbfFP-ZI2sj_QBg

(7)视觉模型:https://mp.weixin.qq.com/s/Gq74ITDfEwK88jt8b--1PA


物联网&大数据技术 QQ群:54256083

物联网&大数据项目 QQ群:727664080

QQ:504547114

image

posted @ 2026-08-25 09:07  iNeuOS工业互联网系统  阅读(268)  评论(5)    收藏  举报