mirror of
https://github.com/LHY0125/Gobang-Game.git
synced 2026-05-10 02:19:46 +08:00
4.0 KiB
4.0 KiB
五子棋游戏 - 图形化界面说明 (v8.0)
概述
v8.0版本实现了完整的双版本架构,支持两种界面模式:
- 控制台界面:传统的文本界面,保持原有功能完整性
- 图形化界面:基于SDL3的现代图形界面,提供可视化操作体验
v8.0新增功能
- ✅ SDL3图形化界面:现代化的可视化棋盘
- ✅ 鼠标交互支持:点击落子,直观操作
- ✅ 窗口管理优化:自动居中,响应式设计
- ✅ 事件驱动架构:流畅的用户交互体验
- ✅ 安装包支持:提供专业的安装程序
- ✅ 双版本并行:控制台和GUI版本独立运行
环境要求
SDL3库配置
- 下载SDL3-3.2.22开发库
- 解压到:
D:\settings\SDL\SDL3-3.2.22\ - 确保目录结构如下:
D:\settings\SDL\SDL3-3.2.22\ ├── x86_64-w64-mingw32\ │ ├── include\ # 头文件 │ ├── lib\ # 库文件 │ └── bin\ # DLL文件 └── ...
编译环境
- GCC编译器(MinGW-w64)位于:
D:\Program Files\mingw64 - Windows 10/11操作系统
- 支持OpenGL的显卡驱动
编译方法
方法一:使用批处理脚本(推荐)
# 编译图形化版本
.\compile_gui.bat
方法二:手动编译
# 控制台版本
gcc -std=c17 -o gobang.exe *.c -lws2_32
# 图形化版本
gcc -std=c17 -o gobang_gui.exe *.c -ID:\settings\SDL\SDL3-3.2.22\x86_64-w64-mingw32\include -LD:\settings\SDL\SDL3-3.2.22\x86_64-w64-mingw32\lib -lSDL3 -lws2_32
# 复制SDL3.dll到当前目录
copy "D:\settings\SDL\SDL3-3.2.22\x86_64-w64-mingw32\bin\SDL3.dll" .
运行方法
控制台版本
.\gobang.exe
在主菜单选择模式1-7进行游戏
图形化版本
.\gobang_gui.exe
在主菜单选择模式8启动图形化界面
图形化界面功能
- 窗口大小:800x600像素
- 棋盘显示:15x15标准五子棋棋盘,木质纹理背景
- 鼠标操作:点击棋盘交叉点进行落子
- 键盘操作:
ESC:退出图形化界面返回主菜单R:重新开始游戏U:撤销上一步(如果支持)
- 游戏状态:
- 实时显示当前玩家(黑子/白子)
- 显示游戏进度和状态
- 胜负结果提示
- 视觉效果:
- 黑白棋子带阴影效果
- 当前玩家指示器
- 平滑的图形渲染
- 胜负判定:自动检测五子连珠并显示获胜者
故障排除
编译错误
-
找不到SDL3头文件
- 检查SDL3库路径是否正确
- 确保include目录存在
-
链接错误
- 检查lib目录是否存在
- 确保SDL3.lib文件存在
-
运行时错误
- 确保SDL3.dll在系统PATH中或与exe文件同目录
图形化界面启动失败
- 检查SDL3库是否正确安装在指定路径
- 确保SDL3.dll文件在exe同目录下
- 检查显卡驱动是否支持OpenGL
- 尝试以管理员权限运行
- 确认Windows版本兼容性
运行时问题
- 窗口无法显示:检查显示器分辨率设置
- 鼠标点击无响应:确认点击在棋盘交叉点附近
- 游戏卡顿:关闭其他占用GPU的程序
使用说明
快速开始
- 运行
compile_gui.bat编译图形化版本 - 运行
gobang_gui.exe启动程序 - 在主菜单选择 "8. 图形化界面"
- 使用鼠标点击棋盘进行游戏
- 按ESC键退出图形化界面
游戏规则
- 黑子先行,轮流落子
- 率先形成五子连珠者获胜
- 支持横、竖、斜四个方向的连珠判定
开发说明
文件结构
gui.h- 图形化界面头文件gui.c- 图形化界面实现main.c- 主程序(已添加图形化模式)compile_gui.bat- 图形化版本编译脚本
扩展功能
图形化界面支持进一步扩展:
- 音效支持
- 动画效果
- 主题切换
- 网络对战界面
- AI难度可视化调节
注意:首次使用图形化界面前,请确保SDL3库已正确配置。