2017-01-06 1 views
1

メタルレンダリングのパフォーマンスをフラグメントシェーダで最適化しようとすると、シナリオに応じてテクスチャから読み込む方法がいくつかあることに気付きました。私は、テクスチャの読み込みのアプローチがパフォーマンスに影響を与えるかどうか疑問に思っていました。メタルテクスチャread()とsample()のパフォーマンス

  1. をサンプラー(uint2座標を使用)せずにtex2D.read()の使用:ここで

    は、私が試した三つの異なる選択肢です。正規化座標とtex2D.sample()を用いた画素座標(使用float2座標)

  2. 使用tex2D.sample()float2座標を使用)。

これらのオプションの間で、iOSのパフォーマンスに差異が見込まれますか?

答えて

2

これらは一般的に似ています。座標をuint2/float2の間で変換するには、他の作業よりも多くの作業が必要になることがありますが、この影響は軽微でなければなりません。

Readには、イメージの外側を読み取るための未定義の動作があるため、これは考慮する必要があります。

関連する問題