使用C++编写的一款射击五彩敌人的游戏

使用C++编写的一款射击五彩敌人的游戏

背景

从油管上面up主TheCherno的一期视频My Favourite C++ Project I've EVER REVIEWED? // Code Review看到一款使用C++编写的一款射击五彩敌人的游戏,github源代码地址为:https://github.com/FearlessOne07/Spectrum

Spectrum

一款射击五彩敌人的游戏

操作

WASD - 移动

鼠标左键 - 开枪

Tab - 打开商店升级自己!

F11 - 全屏(Linux 系统无法使用)

Esc - 暂停

游戏玩法

射击敌人,收集光能,在商店升级,如此反复

图片




构建

  • 运行 git clone https://github.com/FearlessOne07/Spectrum.git --recursive
  • 确保已安装 cmake 和所需的生成器
  • 运行 cmake -S . -B buildbuild 目录中生成构建文件
  • 运行 cmake --build build 构建可执行文件和库。
  • 可执行文件将位于 bin 目录中

鸣谢

使用 raylib 制作。

"heart-ui"和"power-ups"纹理是这些assets 的修改版本

在Windows11中使用cmake和VS2022编译运行

编译Spectrum源代码

按照如下步骤

打开Windows cmd终端依次执行

    1. Run git clone https://github.com/FearlessOne07/Spectrum.git --recursive
    1. Make sure cmake and your desired generator are installed
    1. Run cmake -S . -B build to generate build files in the build directory
    1. Run cmake --build build to build the executable and libraries.
    1. Executable will be in the bin directory
      当然前提是得安装VS2022cmake这两个工具
      运行完成后,会在源代码根目录bulid子目录下生成对应的Visual Studio工程文件,然后就可以直接鼠标双击Spectrum.sln使用VS2022直接打开·Spectrum`项目了。如下图所示:

与此同时会在源代码根目录下的bin/Debug或者bin/Release目录下生成对应的Spectrum.exe可执行程序,如下图所示:

2.运行Spectrum.exe可执行程序

Windows11中生成Spectrum.exe可执行程序之后,我们鼠标双击Spectrum.exe可执行程序会因为无法加载图片资源文件而崩溃,如下图所示:

如果我们直接通过VS2022打开Spectrum项目,然后Ctrl+F5是可以正常运行的,如下图所示:

从上图可以看到游戏界面比较简单,主要有左上角的标题栏和中间的PLAYEXIT菜单项,用户通过鼠标左键单击PLAY按钮即可开始游戏,鼠标左键单击EXIT按钮即可退出游戏。


游戏资源目录如下图所示:

我们可以把assets目录下所有的文件夹拷贝到bin/Debug/Spectrum.exe或者bin/Release/Spectrum.exe所在的目录下,如下图所示:

然后再次鼠标双击执行Spectrum.exe即可正常运行,如下图所示:

参考资料

相关推荐
小成202303202651 天前
从C到C++
开发语言·c++
折哥的程序人生 · 物流技术专研1 天前
《Java 100 天进阶之路》第39篇:Java泛型方法的定义和使用
java·开发语言·后端·面试·求职招聘
天天进步20151 天前
Tunnelto 源码解析 #1:从 tunnelto --port 8000 看内网穿透的完整链路
开发语言
Oiiouui1 天前
Godot(4.x): 游戏管理器: Godot 内注入数据处理与总接口实现
游戏·游戏引擎·godot
啄缘之间1 天前
8.【学习】工业级详细接口约束&覆盖率
开发语言·笔记·学习·uvm·sv
Chase_______1 天前
【Java基础核心知识点全解·09】Java 内存布局与垃圾回收详解:栈、堆、栈帧、GC Roots 与对象回收
java·开发语言
江南十四行1 天前
并发编程(四)
开发语言·python
葱卤山猪1 天前
C++17 联合体
开发语言·c++
折哥的程序人生 · 物流技术专研1 天前
Java 23 种设计模式:从踩坑到精通 | 抽象工厂 —— 支付/收款如何成套创建?跨平台 UI 如何一键换肤?
java·开发语言·后端·设计模式
方也_arkling1 天前
【Java-Day11】抽象类和抽象方法
java·开发语言