我正在使用learnopengl的 SSAO 代码,但我的笔记本电脑显示器 ( LM ) 和外接显示器 ( EM ) 之间的结果不同。
EM 结果(良好):
LM 结果(坏):
当我将结果窗口从 LM 拖到 EM 时,窗口不会改变,反之亦然。
另外,我用
glfwGetFramebufferSize(window, &screenWidth, &screenHeight);
glViewport(0, 0, screenWidth, screenHeight);
设置视口大小[原因],我得到了
- EM : screenWidth = 800, screenHeight = 600 (等于窗口大小)
- LM:屏幕宽度 = 1600,屏幕高度 = 1200
虽然我将笔记本电脑显示器视口大小设置为 (800, 600),但结果很好:
视口大小 (800*600) LM 结果
当我不使用 SSAO 或做一些简单的任务(天空盒、加载模型等)时,结果是一样的。
我的笔记本电脑显示器是:
Retina 13.3-inch(2560 x 1600)
Intel Iris 1536 MB Graphics Card
我的外接显示器是:
AOC 2489W1 23.5-inch(1920 x 1080)
Intel Iris 1536 MB Graphics Card
60Hz
关于如何实现这一目标的任何想法?