图像尺寸对清晰度的影响
最近做仪表练习器的图形界面,但图像清晰度不高一直困扰着我。今天偶然发现,罪魁祸首是没有按OpenGL Red Book上纹理大小的规定处理(2^n的要求),认为只要宽、高不是奇数不会出错就可以了。为了编程的方便,在1024x768分辨率的屏幕,显示全屏幕的图片,直接用一个1024x768的图片。下面的图一是采用1024x768大小的图片做纹理的仪表面板右侧的燃油流量和滑油压力表,图像模糊。而图二是采用同一张图片,修改成的1024x1024的图片做纹理,在1024x768屏幕上显示的仪表面板,图像清晰。切记纹理一定使用2^n大小的图片,这样可以提高清晰度。实际上通过跟踪OpenGL的执行过程,可以发现当提供的纹理大小是1024x768时,OpenGL自动将图片放大到1024x1024,当图片绑定到屏幕显示大小为1024x768尺寸的四方形时,图像有需要缩小。来回的放大缩小使图像质量恶化。
图一 图二
浙公网安备 33010602011771号