发布 v25.0.0 · gfx-rs/wgpu

主要观点:wgpu 进行了一系列更新,包括移除 API 中的哈希表、为所有后端添加功能、重写device.poll API、重命名和文档化wgpu::Device::start_capture、确保循环有界、内部拆分Features、添加 WebGPU 合规的双源混合功能、统一 SpirV 着色器传递接口、创建无操作后端、添加SHADER_F16功能、改进无绑定支持及验证规则等,同时还新增了许多功能,如Buffer相关方法、Naga 支持等,也有一些通用、Naga、Vulkan 等方面的更改、Bug 修复、性能提升和文档改进等。
关键信息

  • 哈希表相关:PipelineCompilationOptions::constantsShaderSource::Glsl::defines改取键值对切片。
  • 后端功能:vulkangles后端可禁用,webgl feature 下在 WebAssembly 仅使用 GLES 后端。
  • device.poll API:重写后返回结果包含 poll 信息,WebGL 默认行为改变。
  • wgpu::Device::start_capture:重命名、文档化并设为 unsafe。
  • 循环有界:确保 Naga 后端生成的着色器中的循环有界。
  • 内部拆分Features:更明确地管理 wgpu 特定功能和 WebGPU 功能。
  • WebGPU 功能:添加双源混合功能,统一 SpirV 着色器传递接口。
  • 无操作后端:可在无 GPU 时创建 dummy 设备。
  • SHADER_F16功能:可在所有 shader 中使用。
  • 绑定支持:Metal 绑定数组支持改进,限制增加。
    重要细节
  • [@cwfitzgerald]在多个 pull request 中做出贡献,如 [#7133]、[#7076]等。
  • 新增功能涉及Buffer、Naga、examples 等多个方面,如添加Buffer方法、Naga 支持新特性等。
  • 更改包括wgpu::Instance::request_adapter()返回Result等。
  • Bug 修复涵盖 Naga、General、Vulkan、Gles、Dx12、WebGPU 等多个领域。
  • 性能提升方面替换unicode-xidunicode-ident
  • 文档改进体现在多个方面,如 pipeline caches、PresentMode等的文档完善。
阅读 44
0 条评论