源代码下载开源社区开源通⽤型渲染⼯具-SwiftShader--OpenGL的替代者SwiftShader 是⼀款⽤于在 CPU 上进⾏⾼性能图形渲染的软件库。Google 已经在很多产品中使⽤该内容库,包括 Chrome、Android 开发⼯具和云服务。Swiftshader 从今天开始完全开放源码,扩展了其应⽤范围。
⾃ 2009 年起,Chrome 就开始使⽤ SwiftShader 在不完全⽀持硬件加速渲染的系统上进⾏ 3D 渲染。虽然为 GPU 写⼊了 WebGL 等 3D 内容,但有些⽤户的设备没有可执⾏此内容的图形硬件。其他设备可能包含存在严重错误的驱动程序,导致 3D 渲染不可靠,或甚⾄不可实现。Chrome 在这些系统上使⽤ SwiftShader,以确保 3D ⽹页内容对所有⽤户可⽤。
▲在 GPU 不合适(左图)的设备上不使⽤ SwiftShader 的 Chrome ⽆法运⾏ WebGL Globe 实验。在同⼀设备上,启⽤ SwiftShader 后(右图)则完全可以对内容进⾏渲染。
SwiftShader 实现 Chrome 和 Android 使⽤的相同的 OpenGL ES 图形 API。SwiftShader 开放源码将促使其他浏览器供应商普遍⽀持 3D 内容,从⽽使⽹站平台作为⼀个整体向前发展。具体⽽⾔,⽆条件的 WebGL ⽀持将允许⽹站开发⼈员创建更具吸引⼒的内容,例如休闲游戏、教育应⽤、合作内容创作软件、产品展⽰和虚拟游览等。SwiftShader 在云服务领域也有应⽤,实现了在⽆ GPU 系统上的渲染。
为了向⽤户提供最佳性能,SwiftShader 使⽤多种⽅法⾼效地在 CPU 上执⾏图形计算。动态代码⽣成使在运⾏时针对现有任务⾃定义代码成为可能,与更常见的编译时优化完全不同。通过使⽤ Reactor 简化
这种复杂的⽅法,Reactor 是⼀种⾃定义 C++ 嵌⼊式语⾔,具有直观的命令式语法。SwiftShader 还可以单指令多线程 (SIMT) ⽅式使⽤向量运算,并结合使⽤多线程技术来提⾼ CPU 可⽤内核和⽮量单元之间的并⾏性。这样可实现实时渲染,其⽤途包括在 Android 上进⾏应⽤串流等。
开发者可从其 Git 存储库访问 SwiftShader 源代码。注册邮件列表,了解最新的开发资讯,并与开源社区的其他 SwiftShader 开发者展开合作。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。