【问题标题】:Metal texture read() vs sample() performance金属纹理 read() vs sample() 性能
【发布时间】:2017-05-20 16:55:22
【问题描述】:

在尝试优化片段着色器中的 Metal 渲染性能时,我注意到有几种方法可以从纹理中读取,具体取决于场景。我想知道纹理读取方法是否会影响性能。

这是我尝试过的三种不同的选择:

  1. 在没有采样器的情况下使用 tex2D.read()(使用 uint2 坐标)。
  2. tex2D.sample() 与像素坐标一起使用(使用float2 坐标)
  3. tex2D.sample() 与标准化坐标一起使用(使用float2 坐标)。

我应该期望这些选项在 iOS 中的性能差异吗?

【问题讨论】:

    标签: ios gpu metal


    【解决方案1】:

    它们通常相似。一个人可能需要比另一个人更多的工作来在 uint2 / float2 之间转换坐标,但这种影响应该很小。

    Read 在图像外部读取时具有未定义的行为,因此需要考虑。

    【讨论】:

      猜你喜欢
      • 2017-06-14
      • 1970-01-01
      • 2018-04-25
      • 1970-01-01
      • 2020-11-30
      • 2019-05-18
      • 2018-10-29
      • 2018-09-29
      • 2012-12-12
      相关资源
      最近更新 更多