Repolode
raysan5

raysan5/raylib

一个简单易用的 C 语言游戏编程库,提供 2D/3D 图形、输入、音频等功能,无外部依赖。

可替代:UnityUnreal Engine

Star
35,359
Fork
3,350
未关闭 Issue
10
最近提交
8小时前

这是什么?

raylib 是一个用于电子游戏编程的 C 语言库,设计上强调简单易用,适合原型开发、教学、工具制作和嵌入式系统。它借鉴了 Borland BGI 图形库和 XNA 框架的思路,提供统一的接口来创建窗口、处理输入、渲染 2D 和 3D 内容以及播放音频。

库采用 C99 编写,所需依赖全部内置,构建时无需安装额外包。支持 Windows、Linux、macOS、Raspberry Pi、Android 和 HTML5 等平台,默认使用 OpenGL 进行硬件加速,也提供软件渲染后端。纹理、字体、3D 模型(IQM、M3D、glTF)和音频格式均有支持,并包含着色器、PBR 材质以及向量、矩阵、四元数运算模块。

raylib 不提供编辑器或调试界面,主要通过丰富的示例代码和函数速查表来学习使用。它也有多种其他编程语言的绑定。

核心功能

  • 01无外部依赖的 C99 库,所需代码全部内置
  • 02支持 Windows、Linux、macOS、Raspberry Pi、Android 和 HTML5
  • 03提供 2D 与 3D 渲染,支持模型、着色器和 PBR 材质
  • 04支持 IQM、M3D、glTF 模型的骨骼动画
  • 05支持 WAV、OGG、MP3、FLAC 等音频的加载与流式播放
  • 06内置向量、矩阵、四元数数学模块

适用场景

  • 用 C 语言快速原型化 2D 或 3D 游戏
  • 用简洁的 API 进行游戏编程教学
  • 在不依赖大型引擎的情况下开发图形工具或可视化程序
  • 在 Raspberry Pi 等嵌入式开发板上运行图形应用

快速上手

  1. 1

    从 GitHub Releases 页面下载预编译版本

  2. 2

    或按照 raylib Wiki 中的各平台构建指南操作

  3. 3

    从 README 中的基础窗口示例开始

使用前须知

  • 默认只支持单窗口和单个 OpenGL 上下文,不支持多窗口。
  • 在支持窗口的平台上,调整窗口大小或移动窗口会停止渲染循环。
  • 字体光栅化质量低于 Freetype2 等替代方案。
  • 文本绘制不支持从右到左书写、连字或表情符号。

标签

常见问题

raylib 是什么?
一个简单易用的 C 语言游戏编程库,提供 2D/3D 图形、输入、音频等功能,无外部依赖。 raylib 是一个用于电子游戏编程的 C 语言库,设计上强调简单易用,适合原型开发、教学、工具制作和嵌入式系统。它借鉴了 Borland BGI 图形库和 XNA 框架的思路,提供统一的接口来创建窗口、处理输入、渲染 2D 和 3D 内容以及播放音频。
raylib 可以免费使用吗?用的什么许可证?
raylib 以 Zlib 许可证开源。用于商业产品前,请先确认许可证条款。
raylib 还在维护吗?
活跃维护中。raylib 最近一次提交是在 2026年10月21日。
raylib 适合用来做什么?
用 C 语言快速原型化 2D 或 3D 游戏 用简洁的 API 进行游戏编程教学 在不依赖大型引擎的情况下开发图形工具或可视化程序 在 Raspberry Pi 等嵌入式开发板上运行图形应用
raylib 怎么安装和运行?
从 GitHub Releases 页面下载预编译版本 或按照 raylib Wiki 中的各平台构建指南操作 从 README 中的基础窗口示例开始
在哪里获取 raylib?
源代码和安装说明在 GitHub 上:https://github.com/raysan5/raylib

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目