文件调整

This commit is contained in:
2026-04-29 15:56:31 +08:00
parent be95bd25e1
commit 7fe0244a99
4 changed files with 119 additions and 618 deletions
+119 -2
View File
@@ -4,6 +4,31 @@ Tereis 是一个基于 C++、Win32 API、GDI/GDI+ 实现的桌面版俄罗斯方
项目在经典俄罗斯方块玩法上扩展了 Rogue 模式,加入等级成长、强化选择、主动技能、特殊方块、视频复活、鼠标交互和视觉特效。程序不依赖游戏引擎,主要使用 Win32 消息循环和 GDI 绘图完成。
## 快速运行
推荐在 Windows + PowerShell + MinGW-w64 环境下运行。
1. 确认 `g++.exe``windres.exe` 已加入 `PATH`,或安装在 `C:\mingw64\bin\`
2. 在项目根目录执行构建并运行:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1 -Run
```
3. 如只需构建,不启动程序:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1
```
构建产物位于:
```text
.vscode-build\mingw\Tetris.exe
```
运行时请从项目根目录启动程序,确保 `assets/` 目录可被读取,否则背景图、音乐和复活视频可能无法加载。
## 功能概览
### 经典模式
@@ -91,6 +116,85 @@ Rogue 模式是本项目的主要扩展玩法。
- 双重抉择 / 命运轮盘:Space 标记,Enter 确认已选强化
- 鼠标操作:直接点击升级卡片即可选择或标记
## 运行说明
### 方式一:PowerShell 一键运行
在项目根目录打开 PowerShell,执行:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1 -Run
```
该命令会先编译项目,编译成功后自动启动游戏窗口。
### 方式二:先构建再运行
先在项目根目录执行构建:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1
```
构建成功后运行生成的程序:
```powershell
.\.vscode-build\mingw\Tetris.exe
```
### 方式三:VS Code 运行和调试
项目已经配置好 VS Code 任务:
-`Ctrl + Shift + B` 执行默认构建任务 `build Tetris MinGW`
- 在任务列表中运行 `run Tetris MinGW` 可构建并启动游戏
- 在“运行和调试”中选择 `Debug Tetris MinGW` 可启动调试
调试需要系统能找到 `gdb.exe`。如果无法调试,请确认 MinGW 的 `bin` 目录已经加入 `PATH`
### 方式四:Visual Studio 中运行
本项目没有提供 Visual Studio 的 `.sln``.vcxproj` 工程文件,推荐在 Visual Studio 中打开项目文件夹,然后通过终端调用已有构建脚本运行。
操作步骤:
1. 打开 Visual Studio。
2. 选择 `文件 -> 打开 -> 文件夹`,打开项目根目录 `Tereis`
3. 打开 Visual Studio 内置终端,或在项目根目录单独打开 PowerShell。
4. 确认 MinGW-w64 已安装,并且 `g++.exe``windres.exe` 可以被系统找到。
5. 在终端中执行:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1 -Run
```
如果只想编译,不立即运行:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1
```
编译成功后,程序位置为:
```text
.vscode-build\mingw\Tetris.exe
```
也可以在 Visual Studio 的终端中运行:
```powershell
.\.vscode-build\mingw\Tetris.exe
```
注意:不要直接把 `src` 目录中的单个 `.cpp` 文件当作独立程序运行。本项目由多个源文件、资源文件和 `assets/` 资源目录共同组成,必须通过项目根目录下的 `build-mingw.ps1` 构建。
### 运行注意事项
- 推荐始终从项目根目录启动程序。
- 不建议直接双击 `.vscode-build\mingw\Tetris.exe`,因为工作目录可能不正确,导致 `assets/` 资源加载失败。
- 如果重新构建时提示 `Tetris.exe: Permission denied`,请先关闭正在运行的游戏窗口。
- 程序使用 Win32 桌面窗口运行,不会显示控制台窗口。
## 项目结构
```text
@@ -118,8 +222,7 @@ Tereis/
├─ .vscode-build/ 本地构建输出目录
├─ build-mingw.ps1 MinGW 构建脚本
├─ README.md 项目说明
VSCode运行说明.md VS Code 构建运行说明
└─ Dev-C++运行说明.md Dev-C++ 兼容运行说明
AGENTS.md 项目协作和代码生成约束
```
## 构建环境
@@ -161,6 +264,20 @@ powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1
powershell -NoProfile -ExecutionPolicy Bypass -File .\build-mingw.ps1 -Run
```
也可以直接运行已生成的程序:
```powershell
.\.vscode-build\mingw\Tetris.exe
```
如果使用 VS Code
- `Ctrl + Shift + B` 执行默认构建任务 `build Tetris MinGW`
- 运行任务 `run Tetris MinGW` 可构建并启动游戏
- 调试配置 `Debug Tetris MinGW` 会先构建,再使用 `gdb.exe` 启动调试
注意:直接双击 `.vscode-build\mingw\Tetris.exe` 时,当前工作目录可能不是项目根目录,资源文件可能无法正常读取。推荐从项目根目录通过脚本或 VS Code 任务启动。
## 常见问题
### 1. 提示 `Tetris.exe: Permission denied`