raylib raylib

嵌入式 4/5 💻 纯软件 已发布
raysan5 33122 Stars Zlib BOM 完整度: 0/5 教程完整度: 1/5
raylib

项目简介

一个简单易用的库,用于享受视频游戏编程。


raylib 是一个简洁易用的开源游戏编程库,旨在让开发者纯粹通过代码享受视频游戏创作的乐趣。它深受 Borland BGI 图形库和 XNA 框架的启发,特别适合快速原型开发、工具制作、图形应用、嵌入式系统以及编程教育。其核心理念是回归编程本质——没有花哨的界面、可视化辅助或调试按钮,只有最纯粹的“斯巴达式”编码体验。

标签

项目特点

**无外部依赖**:所有必需的库都已包含在 raylib 中。
**多平台支持**:支持 Windows、Linux、macOS、RPI、Android、HTML5 等。
**纯 C 语言编写**:使用 C99 标准,采用 PascalCase/camelCase 命名法。
**硬件加速**:支持 OpenGL 1.1、2.1、3.3、4.3、ES 2.0、ES 3.0。
**独特的 OpenGL 抽象层**:rlgl 模块可独立使用。
**软件渲染后端**:rlsw 模块,无需 OpenGL。
**多种字体格式支持**:TTF、OTF、FNT、BDF、精灵字体。
**多种纹理格式支持**:包括压缩格式(DXT、ETC、ASTC)。
**完整的 3D 支持**:包括 3D 形状、模型、广告牌、高度图等。
**灵活的材料系统**:支持经典贴图和 PBR 贴图。
**动画 3D 模型支持**:支持骨骼动画(IQM、M3D、glTF)。
**着色器支持**:包括模型着色器和后处理着色器。
**强大的数学模块**:raymath,用于向量、矩阵和四元数运算。
**音频加载和播放**:支持流式播放(WAV、QOA、OGG、MP3、FLAC、XM、MOD)。
**VR 立体渲染支持**:可配置 HMD 设备参数。
**丰富的示例集合**:包含超过 140 个代码示例。
**多语言绑定**:支持超过 70 种编程语言。
**免费且开源**。

技术规格

编程语言 C (C99)
图形 API OpenGL 1.1, 2.1, 3.3, 4.3, ES 2.0, ES 3.0, 软件渲染
支持平台 Windows, Linux, macOS, Raspberry Pi, Android, HTML5
音频格式 WAV, QOA, OGG, MP3, FLAC, XM, MOD
字体格式 TTF, OTF, FNT, BDF, 精灵字体
纹理格式 DXT, ETC, ASTC 等
3D 模型格式 IQM, M3D, glTF
许可证 zlib/libpng

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
编译器 (如 GCC, Clang, MSVC) 1 用于编译 raylib 和你的项目
文本编辑器或 IDE 1 如 Notepad++, VS Code, CLion 等
CMake (可选) 1 用于跨平台构建

3D 模型

模型名称文件名文件
greenman greenman.glb
greenman_hat greenman_hat.glb
greenman_shield greenman_shield.glb
greenman_sword greenman_sword.glb
raylib_logo_3d raylib_logo_3d.glb
robot robot.glb
bridge bridge.obj
castle castle.obj
character character.obj
cube cube.obj
house house.obj
market market.obj
plane plane.obj
turret turret.obj
well well.obj
barracks barracks.obj
church church.obj
old_car_new old_car_new.glb
plane plane.glb
robot robot.glb
watermill watermill.obj

能力画像

⚪ 记忆与知识检索: 2/5
🔵 逻辑推演: 3/5
⚪ 表达与交流: 1/5
⚪ 感知与观察: 1/5
⚪ 数理与计算: 3/5
⚪ 动手与操作: 1/5
⚪ 狂热与坚持: 2/5
⚪ 创造与创新: 4/5

所需技能

🔧 **动手能力**:无需硬件动手能力,但需要配置开发环境。 💻 **编程能力**:需要具备 C 语言基础,了解基本编程概念。 ⚡ **电子电路**:不需要。

适用场景

游戏开发学习和教学。
快速原型制作和工具开发。
图形化应用程序开发。
嵌入式系统图形界面开发。
创意编程和艺术项目。