-2
我有一個關於OpenGL紋理的問題。我正在嘗試將它們用於GPGPU操作,但我陷入了開始階段。我創建了這樣的紋理(4x4 int矩陣)。從紋理獲取確切的像素
OGLTexImageFloat dataTexImage = new OGLTexImageFloat(4, 4, 4);
dataTexImage.setPixel(0, 0, 0, 0);
dataTexImage.setPixel(0, 1, 0, 10);
dataTexImage.setPixel(0, 2, 0, 5);
dataTexImage.setPixel(0, 3, 0, 15);
dataTexImage.setPixel(1, 0, 0, 10);
dataTexImage.setPixel(1, 1, 0, 0);
dataTexImage.setPixel(1, 2, 0, 2);
dataTexImage.setPixel(1, 3, 0, 1000);
dataTexImage.setPixel(2, 0, 0, 5);
dataTexImage.setPixel(2, 1, 0, 2);
dataTexImage.setPixel(2, 2, 0, 0);
dataTexImage.setPixel(2, 3, 0, 2);
dataTexImage.setPixel(3, 0, 0, 15);
dataTexImage.setPixel(3, 1, 0, 1000);
dataTexImage.setPixel(3, 2, 0, 2);
dataTexImage.setPixel(3, 3, 0, 0);
texture = new OGLTexture2D(gl, dataTexImage);
現在我想從[1,1]矩陣位置增加值到每個像素(矩陣條目)的值。正如我在談論每幅圖片時,我應該在片段着色器中做這件事。但我不知道我怎麼能得到確切的像素形式紋理(矩陣[1,1]條目)。有人可以解釋我,如何做到這一點?
「*由於我正在談論每張圖片,所以我應該在片段着色器中做。*」您正在添加*** 16值。上傳和下載數據到GPU所花費的時間將比實際添加花費的時間更長。只需使用CPU。 –
我想將它用於更大的數據集,但是從一開始我就有一個小矩陣,所以我更容易想象這個問題。 – Pogasta