1

より複雑なシェーダーを使用しようとしてきましたが、頂点シェーダーとテクスチャ サンプラーで使用される座標系で問題が発生しました。要するに、それらは意味をなさないように見え、それらをテストしようとすると、一貫性のない結果が得られます。さらに悪いことに、インターネットにはドキュメントがほとんどなく、私が見つけた情報のほとんどは、これがどのように機能するかを既に知っていることを期待しているようです. 誰かが次のことを明確にしてくれることを望んでいました:

  • 頂点シェーダーは、レンダー ターゲット上の位置を表す (x, y, z) を渡します。x、y、z の許容値は?
  • x と y はバック バッファーの幅と高さにどのように対応しますか (それがレンダー ターゲットであると仮定します)?
  • x と y は出力テクスチャの幅と高さにどのように対応しますか (それがレンダー ターゲットであると仮定して)?
  • x=0 かつ y=0 の場合、頂点はどこに位置しますか?
  • テクスチャ サンプラーは、(u, v) 座標でテクスチャをサンプリングします。u と v の許容値は?
  • u と v は、サンプリングされるテクスチャの幅と高さにどのように対応しますか?
  • AGAL のラップ、クランプ、およびリピート フラグはどのようにサンプリングを変更しますか? また、指定されていない場合の既定の動作は何ですか?
  • u=0 および v=0 でサンプリングする場合、どのピクセルが位置ごとに返されますか?

編集: 私のテストから、答えは次のとおりだと思います:

  • わからない
  • -1 は左/下、1 は右/上
  • わからない
  • 出力の中心に
  • わからない
  • 0 は左/下、1 は右/上
  • わからない
  • テクスチャの左下
4

1 に答える 1