qengine 开源项目使用教程
1. 项目介绍
qengine 是一个跨平台的复古游戏引擎,旨在为那些怀念简单时代并享受像1997年一样制作游戏的开发者提供支持。它采用软件渲染器提供我们所喜爱的美学,并且引擎的限制存在是为了让你的创意更加突出。
qengine 是基于 Quake II 代码库的一个分支,专注于为独立游戏提供一个基础。与其他端口不同,它并不旨在与模组或原版 Quake II 游戏兼容。实际上,为了减少代码库的复杂性和加快在引擎之上创建新游戏的流程,许多功能被移除。
主要特点包括:
- 移除过于具体的游戏代码,如敌人和武器
- 将模块合并为单一包。不再有 DLLs,只有单独的客户端和服务器可执行文件
- 移除 OpenGL
- 最小依赖性
- 免费、开源和社区驱动
2. 项目快速启动
在开始之前,确保您的环境中已经安装了必要的依赖项。
mkdir build
cd build
cmake ..
make
如果您不希望构建文档或者不希望安装它们所需的依赖项,可以在运行 cmake
时加上 -DBUILD_DOCS=OFF
参数。
cmake -DBUILD_DOCS=OFF ..
make
编译完成后,引擎会在 assets
文件夹中寻找游戏数据。您可以从头开始,或者如果拥有原版 Quake II 游戏数据,可以使用它们。
3. 应用案例和最佳实践
制作一个简单的地图
使用引擎提供的工具来编译地图:
tools/qbsp3 assets/maps/sample.map
tools/qvis3 assets/maps/sample.bsp
tools/qrad3 assets/maps/sample.bsp
创建自定义材质
引擎使用 256 色调色板。可以通过以下步骤创建新的材质:
tools/pcx2pal palette.pcx palette.pal
tools/colormap palette.pal colormap.pcx
4. 典型生态项目
目前,qengine 社区中有一些典型的生态项目,包括但不限于:
- Mapping Tools:提供了一组映射工具,如
qbsp3
,qvis3
,qrad3
和bspinfo
。 - Texture Tools:纹理工具,例如
pcx2wal
,pcx2pal
,colormap
和16to8
。 - UI Tools:用户界面工具,比如
uigen
和fontgen
。
以上就是关于 qengine 的基本使用教程,希望对您的游戏开发有所帮助。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考