perspective correct interpolation
chrome-extension://cdonnmffkdaoajfknoeeecmchibpmkmg/assets/pdf/web/viewer.html?file=https%3A%2F%2Fwww.comp.nus.edu.sg%2F~lowkl%2Fpublications%2Flowk_persp_interp_techrep.pdf
在做SSGI的时候,关于screen space 和 view space 下的插值换算需要搞搞清楚,要做perspective correct interpolation,不然之后的ray marching 计算交点会有问题。
简单的说就是
屏幕空间的uv插值的scale和view space下的不一样,如图中的s和t
屏幕空间的uv线性插值并不等于view space下的linear depth线性插值,是linear_depth倒数的线性插值
compute shader thread count
https://gpuopen.com/learn/optimizing-gpu-occupancy-resource-usage-large-thread-groups/
https://www.reddit.com/r/GraphicsProgramming/comments/aeyfkh/for_compute_shaders_is_there_an_ideal_numthreads/
其实在写compute shader的时候,对于每一个线程组中线程数的个数不是很确定应该怎么定,在做SSGI的时候我也试过pixel shader和compute shader的性能,甚至发现compute shader的性能还不如pixel shader,对于不同的配置,这个线程数的定义应该也不一样,但是现在shader又是写死的,所以现在对这个的设置还是有点迷。