Live data from Hacker News

Novel OpenGL Pixel Shader Dewarping

medium.com

1–8 of 8 posts

Re: Novel OpenGL Pixel Shader Dewarping

#6
From what I understand from code those unwarps are just doing matrix multiply to get unwraped pixel location? In this case doing these operations directly in fragment shader instead of texture lookup will be faster. Memory bandwidth is not free. But simple ALU like this (just couple FMA's) can easily hide in shadow of texture sampling that happens afterwards. So simply upload those undistortion matrices (mat1 & mat2) as uniforms and do matrix multiply in shader for adjusting texcoords.

Re: Novel OpenGL Pixel Shader Dewarping

#7
post #6

From what I understand from code those unwarps are just doing matrix multiply to get unwraped pixel location? In this case doing these operations directly in fragment shader instead of texture lookup will be faster. Memory bandwidth is not free. But simple ALU like this (just couple FMA's) can easily hide in shadow of texture sampling that happens afterwards. So simply upload those undistortion matrices (mat1 & mat2)…

map1 and map2 are the same dimensions as the video image.

Re: Novel OpenGL Pixel Shader Dewarping

#8
post #6

From what I understand from code those unwarps are just doing matrix multiply to get unwraped pixel location? In this case doing these operations directly in fragment shader instead of texture lookup will be faster. Memory bandwidth is not free. But simple ALU like this (just couple FMA's) can easily hide in shadow of texture sampling that happens afterwards. So simply upload those undistortion matrices (mat1 & mat2)…

map1 and map2 are the same dimensions as the video image.

Ah, I see. Yeah, then the current approach is fine.