Facebook开源高效易用的GPU编程库,适配广泛设备

Facebook开源高效易用的GPU编程库,适配广泛设备Intermediate Graphics Library (IGL) 是 Facebook 开源的跨平台的图形库,它通过一个低级跨平台接口封装了常见的 GPU 功能。IGL 的设计目标是支持多个后端,在各种图形 API(如 OpenGL、Metal 和 Vulkan)之上实现一个通用接口。

IGL 具有如下优势:

  • 低级别,前瞻性的 API。IGL 采用现代抽象化技术(如命令缓冲区,状态容器,无绑定等),旨在比 OpenGL 的状态机 API 提供更多控制。因此,IGL 可以为现代 API(例如 Metal,Vulkan)拥有更精简的后端。
  • IGL 在设计时考虑了对 C++语言的最小化额外开销。IGL 允许将新的或已有的本地渲染代码无缝集成进来,而不会增加语言交互的负担,也无需引入其他语言的运行时环境。
  • IGL 在 Android 设备的长尾设备上,以及对 OpenGL/Vulkan 的 Quest 2/3/Pro 经过了充分的测试和验证,通过对 IGL 进行性能调优,可以保证在各种生产环境中,包括大规模用户使用的情况下,IGL 能够高效地运行,不会成为性能瓶颈。

支持的渲染后端

  • Metal 2+
  • OpenGL 2.x
  • OpenGL 3.1+
  • OpenGL ES 2.0+
  • Vulkan 1.1
  • WebGL 2.0

支持的平台

  • Android
  • iOS
  • Linux
  • macOS
  • Windows
  • WebAssembly

API 支持


Windows Linux macOS iOS Android
Vulkan 1.1 ✔️ ✔️ ✔️ (MoltenVK) ✖️ ✔️(Quest 2/3/Pro)
OpenGL ES 2.0 – 3.0 ✔️ (Angle) ✔️ (Angle) ✔️ ✔️ ✔️
OpenGL ES 3.1 – 3.2 ✔️ (Angle) ✔️ (Angle) ✖️ ✖️ ✔️
OpenGL 3.1 – 4.6 ✔️ ✔️ ✖️ ✖️ ✖️
Metal 2 ✖️ ✖️ ✔️ ✔️ ✖️

构建

在构建之前,运行部署脚本:

python3 deploy_content.py
python3 deploy_deps.py

Windows

cd build
cmake .. -G "Visual Studio 17 2022"

Linux

sudo apt-get install clang xorg-dev libxinerama-dev libxcursor-dev libgles2-mesa-dev libegl1-mesa-dev libglfw3-dev libglew-dev libstdc++-12-dev
cd build
cmake .. -G "Unix Makefiles"

macOS

cd build
cmake .. -G "Xcode" -DIGL_WITH_VULKAN=OFF

iOS

cd build
cmake .. -G Xcode -DCMAKE_TOOLCHAIN_FILE=../third-party/deps/src/ios-cmake/ios.toolchain.cmake -DPLATFORM=SIMULATOR64

Android

https://github.com/facebook/igl/tree/main/build/android

WebAssembly

需要安装 Emscripten and Ninja

cd build
emcmake cmake .. -G Ninja
cmake --build .

截图

Facebook开源高效易用的GPU编程库,适配广泛设备Facebook开源高效易用的GPU编程库,适配广泛设备

传送门

开源协议:MIT

开源地址:https://github.com/facebook/igl

项目合集:https://github.com/OpenTechCol/OpenTechCol

-END-


原文始发于微信公众号(开源技术专栏):Facebook开源高效易用的GPU编程库,适配广泛设备

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/155149.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!