这可能是一个“功课”问题,但我认为我做得足够,所以我可以在这里得到帮助。
在我的任务中,我们有一个有效的OpenGL / OpenCL应用程序。 OpenGL应用程序呈现场景,OpenCL应该应用景深效果。 OpenCL部分获取纹理,其中每个像素具有原始颜色和深度,并且应该输出给定像素的颜色。我应该只改变每像素功能,这是OpenCL的一部分。
我已经有了使用可变大小的高斯滤波器的工作解决方案,它可以对计算出的像素周围的区域进行采样。但即使在我专用的NVidia显卡上,它的分辨率仍然很高。我尝试优化大部分冗余操作,但是我没有获得太多的性能提升。
我也尝试在网上搜索,但我发现的所有算法都与OpenGL或DirectX的图形管道密切相关,在我的场景中无法使用。
有没有可以在我的情况下工作的算法?
答案 0 :(得分:0)
AMD APP SDK有一个名为URNGGL的样本(具有OpenGL / OpenCL互操作性的统一随机噪声发生器)。
看看https://github.com/clockfort/amd-app-sdk-fixes/tree/master/samples/opencl/cl/app/URNG。