Project Icon

raylib

轻量级跨平台游戏开发库 支持2D和3D图形

raylib是一款开源的游戏开发库,采用纯C语言编写。它具有跨平台兼容性,支持2D和3D图形渲染、音频处理和数学运算。该库提供硬件加速的OpenGL抽象层,无需外部依赖。raylib适用于快速原型设计、工具开发、图形应用和教育领域。它包含丰富的示例和多种编程语言接口。

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

raylib深受Borland BGI图形库和XNA框架的启发,特别适合原型设计、工具开发、图形应用、嵌入式系统和教育。

冒险者注意:raylib是一个用于享受视频游戏编程的编程库;没有花哨的界面,没有可视化辅助工具,没有调试按钮...只有以最纯粹的斯巴达程序员方式进行编码。

准备好学习了吗?跳转到代码示例!



GitHub发布下载量 GitHub星标数 自标记版本以来的GitHub提交数 GitHub赞助商 打包状态 许可证

Discord成员 Reddit静态徽章 Youtube订阅者 Twitch状态

Windows Linux macOS WebAssembly

CMake构建 Windows示例 Linux示例

特性

  • 无外部依赖,所有必需的库都捆绑在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
  • 支持多种字体格式(TTF、OTF、图像字体、AngelCode字体)
  • 支持多种纹理格式,包括压缩格式(DXT、ETC、ASTC)
  • 全面的3D支持,包括3D形状、模型、公告牌、高度图等!
  • 灵活的材质系统,支持经典贴图和PBR贴图
  • 支持3D模型动画(骨骼动画)(IQM、M3D、glTF)
  • 支持着色器,包括模型着色器和后处理着色器
  • 强大的数学模块用于向量、矩阵和四元数运算:raymath
  • 支持音频加载和播放,包括流媒体(WAV、QOA、OGG、MP3、FLAC、XM、MOD)
  • 支持VR立体渲染,可配置HMD设备参数
  • 大量示例集合,包含超过140个代码示例
  • 超过70种编程语言的绑定!
  • 免费开源

基本示例

这是一个基本的raylib示例,它创建一个窗口并在屏幕中央绘制文本"恭喜!你创建了你的第一个窗口!"。你可以在这里查看此示例的网页版运行效果

#include "raylib.h"

int main(void)
{
    InitWindow(800, 450, "raylib [core] 示例 - 基本窗口");
while (!WindowShouldClose())
{
    BeginDrawing();
        ClearBackground(RAYWHITE);
        DrawText("恭喜!你创建了你的第一个窗口!", 190, 200, 20, LIGHTGRAY);
    EndDrawing();
}

CloseWindow();

return 0;
}

构建和安装

raylib的Windows、Linux、macOS、Android和HTML5二进制发布版可在Github发布页面获取。

raylib也可通过多个操作系统发行版的包管理器获得。

在多个平台上安装和构建raylib

raylib Wiki包含了在多个平台上构建和使用的详细说明。

注意Wiki是开放编辑的,如果你在为目标平台构建raylib时遇到问题,欢迎编辑Wiki或提出相关问题。

在多个IDE中设置raylib

raylib是在Windows平台上使用Notepad++MinGW GCC编译器开发的,但它可以在多个平台上与其他IDE一起使用。

项目目录包含了几个现成的项目模板,可用于在多个IDE中构建raylib和代码示例。

注意支持的IDE很多,一些提供的模板可能需要审查,所以如果你发现模板有问题或认为可以改进,欢迎发送PR或提出相关问题。

学习和文档

raylib的设计理念是通过示例作为主要参考来学习。虽然没有标准的API文档,但有一个速查表,包含了库中所有可用的函数,每个函数都有简短描述,输入参数和返回值名称应该足够直观,以理解每个函数的工作原理。

关于raylib设计的一些额外文档可以在raylib GitHub Wiki中找到。以下是相关链接:

联系和网络

raylib活跃在多个网络中,raylib社区每天都在不断壮大。如果你正在使用raylib并且喜欢它,欢迎加入我们的任何一个网络。最活跃的网络是我们的Discord服务器!:)

贡献者

许可证

raylib采用未修改的zlib/libpng许可证,这是一个经OSI认证的类BSD许可证,允许与闭源软件进行静态链接。查看LICENSE了解更多详情。

raylib内部使用一些库来管理窗口/图形/输入,并支持不同文件格式的加载,所有这些库都嵌入其中,可在src/external目录中找到。在raylib Wiki上查看raylib依赖项许可证了解详情。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号