この関数についてかなり混乱しています glslのコードでは、いつもこのようなものを見ます
uniform sampler2D source;
varying vec2 textureCordi;
void main()
{
vec2 uv = textureCordi.xy;
vec3 t1 = texture2D(source, vec2(uv.x - step_w, uv.y - step_h)).rgb; //2
float average = (t1.r + t1.b + t1.g) / 3.0;
//.....
}
//2で、t1はソースのデータ(データだと思う)を保存するのですが、何個のデータをコピーするのでしょうか? テクスチャの座標は 0 ~ 1 の間です。テクスチャが画像で、画像のサイズが 1024 * 768 であると仮定すると、t1 は 1024 * 768 のピクセル数を節約できますか? このコマンドで gpu は何をしますか?
t1 が重いコピー ジョブを実行する場合、texture2D にソースの参照を t1 に返すように依頼できますか (C++ のように)。