【问题标题】:Does Vulkan have a TransformFeedback equivalentVulkan 是否有等效的 TransformFeedback
【发布时间】:2016-10-26 23:05:39
【问题描述】:

Vulkan 是否支持保存流水线阶段的顶点输出?我一直在寻找,但找不到任何示例或参考资料,也许其他人知道?

【问题讨论】:

    标签: vulkan


    【解决方案1】:

    Transform Feedback 没有在最初的 Vulkan 版本中脱颖而出,也没有直接的等价物。

    所以你实际上必须自己做,例如使用 PrimitiveID 或使用计算着色器从几何着色器写入 SSBO。

    请注意,几何着色器版本可能不适用于所有设备,因为它需要支持 vertexPipelineStoresAndAtomics 功能。

    更新

    自 1.1.88 起,对 TransformFeedback 的支持已作为 an extension 提供。

    【讨论】:

    • 谢谢。你认为它会进入 Vulkan 1.1(或接下来的任何版本)吗?
    • 它可能会在某个时候添加,但我不知道它是否会出现在下一个主要的 Vulkan 版本中。 Afaik TF 不是一个要求很高的功能,大多数用例都可以通过计算着色器和 SSBO 重现,这在 Vulkan 中都是必需的。
    • 我认为 TF 对 Vulkan 来说太高级了。 TF 有什么东西是你不能在 Vulkan 中明确甚至更普遍地做的吗?
    • @krOoze:“我认为 TF 对于 Vulkan 来说太高级了。”我也有同样的想法,但我重新考虑了这个观点。主要是因为 vertexPipelineStoresAndAtomics 不是 是必需的功能。 ES 3.1 硬件显然具备 TF 能力,但很多 ES 3.1 硬件无法做到 vertexPipelineStoresAndAtomics。所以有一些正当的理由。哦,您可以使用计算着色器,但这与使用反馈进行任意计算一样不自然。另外,您不能镶嵌和使用计算着色器。您也不能选择反馈您实际渲染的内容。
    • @NicolBolas AFAIK,OGL ES 3.1 也有 L/S 和原子,所以......他们应该在 Vulkan 中启用它? ;好吧,我会质疑在没有某种写入能力的情况下,必须在硬件上实现哪种可怕的 hack TF。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-03
    • 2023-03-04
    • 2012-02-26
    • 2010-09-22
    • 2013-01-26
    • 2019-11-02
    • 2013-11-12
    相关资源
    最近更新 更多