
wgpu 合并光线追踪管线支持
来源标题:Wgpu merges support for raytracing pipelines
wgpu 项目已合并对光线追踪管线的支持,将此前已加入 hal 层的光线追踪管线以安全的 wgpu 管线形式暴露出来。该 PR(#10144)取代了 #9450,包含 99 个提交,并关闭了 issue #6760。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
[wgpu-core] 光线追踪管线 - #10144 #10144 已合并 mergify[bot] 将 99 个提交合并进 gfx-rs:trunkgfx-rs/wgpu:trunk,来自 Vecvec:core-rt-pipelinesVecvec/wgpu:core-rt-pipelines复制头分支名称到剪贴板 2026年11月5日 对话提交99 (99)检查文件变更 已合并 [wgpu-core] 光线追踪管线#10144 mergify[bot] 将 99 个提交合并进 gfx-rs:trunkgfx-rs/wgpu:trunk,来自 Vecvec:core-rt-pipelinesVecvec/wgpu:core-rt-pipelines复制头分支名称到剪贴板 对话 Vecvec 评论 2026年8月22日 • 已编辑 加载中 哎呀! 加载时出错。请重新加载此页面。 复制链接 复制 Markdown 贡献者 连接 取代 #9450 关闭 #6760 - 合并后应进行拆分 描述 将已添加的 hal 光线追踪管线暴露为安全的 wgpu 管线。这是 #9450 的变基版本,移除了 hal 变更(因为它们已单独添加),并进行了一些调整。这意味着提交中存在一些设计变更。因此,我建议审阅者逐个阅读提交,直到(不包括)add (unused) intersection shader index to TlasInstance,然后阅读该提交直到 Switch back to using a u32 instead of an enum 作为单个块,然后再逐个阅读。 此版本(与其前身不同)使用 u32 作为相交索引,这意味着可以从光线查询中访问它们。然而,由于 metal 无法检索它们,将其设置为大于零需要同时启用光线追踪管线。 此 PR 还将 TlasInvalidCustomIndex 稍作修改为 TlasInvalidCustomData,并添加了实例索引,因为我也将其添加到了新错误中。我可以将其拆分,但只有 2 行。 问题 2(着色器绑定表(SBT)是否应作为光线追踪管线的一部分?)仍有些开放,但解决方案似乎是保留这一个(如果有人需要拆分,届时再拆分 [当有人知道他们需要什么时,API 设计通常更容易])。此外,由于 sbd 有单独的结构体,这个设计也使其在某种程度上易于拆分。 加载时出错。请重新加载此页面。 Vecvec 添加了 13 个提交 2026年8月22日 18:52 初始光线追踪管线 da1d6e9 将着色器绑定表从管线中移出 6e0717e 开始通道实现 9ee0134 支持其他通用操作 e9d087d 向 TlasInstance 添加(未使用的)相交着色器索引 8b3dcf5 使用相交组索引 9fa7810 在核心中支持限制。 8275ea0 改进测试 06ed74b 进一步改进验证 4963c18 修复添加的测试。 9f9a115 填充管线数据 08901ea 修复测试问题 bae6fd3 切换回使用 u32 而不是枚举 f23170c Vecvec 提到了此拉取请求 2026年8月22日 wgpu 的光线追踪管线 #9450 已关闭 8 个任务中的 3 个 JMS55 评论 2026年8月23日 复制链接 复制 Markdown 协作者 在 Bevy 中测试过,没有问题! 加载时出错。请重新加载此页面。 Vecvec 强制推送了 core-rt-pipelines 分支 从 c7ebb64 到 52899a8 比较 2026年8月24日 18:38 要求实例索引为零,除非启用了光线追踪管线… … 7193a1e …。 修复文档 Vecvec 强制推送了 core-rt-pipelines 分支 从 52899a8 到 7193a1e 比较 2026年8月24日 20:49 inner-daemons 自请审阅 2026年8月25日 04:43 inner-daemons 将此分配给自己 2026年8月25日 inner-daemons 评论 2026年8月25日 复制链接 复制 Markdown 协作者 天哪,我们开始吧!!! 加载时出错。请重新加载此页面。 cwfitzgerald 将此分配给自己 2026年8月26日 stuartparmenter 评论 2026年8月27日 复制链接 复制 Markdown 贡献者 这太棒了! 我想将其与 NVIDIA 的 RTX Mega Geometry(VK_NV_cluster_acceleration_structure)一起使用。要在命中着色器中读取集群 ID,创建管线时必须将 VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV 链接到其 VkRayTracingPipelineCreateInfoKHR 上。 能否在光线追踪管线创建时添加调用者提供的 pNext 链(类似于我在 #9847 中添加的内容)?我也很乐意在此合并后提交一个 PR。 加载时出错。请重新加载此页面。 复制链接 复制 Markdown 贡献者 作者 加载时出错。请重新加载此页面。 cwfitzgerald 请求更改 2026年8月29日 查看已审阅的更改 cwfitzgerald 留下了评论 复制链接 复制 Markdown 成员 隐藏此评论时出现问题。 选择隐藏此评论的原因 该评论将显示给其他人,并让他们了解你为何要隐藏它。了解更多。 出色的工作!我非常高兴看到这个取得进展!这里面有很多微妙的东西,但 PR 的整体形态看起来不错。 加载时出错。请重新加载此页面。 评论线程 wgpu/src/api/ray_tracing_pipeline.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu/src/api/ray_tracing_pipeline.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu/src/api/command_encoder.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu-core/src/pipeline.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu-core/src/pipeline.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu-core/src/command/ray_tracing_pass.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu-core/src/ray_tracing.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程 wgpu/src/api/ray_tracing_pipeline.rs 已解决 哎呀! 加载时出错。请重新加载此页面。 评论线程
(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。