给 GtkGLExt 打上支持 OpenGL 多重采样的补丁

LiYanrui posted @ Feb 12, 2009 05:55:09 PM in 数据可视化 with tags gtkglext OpenGL gentoo , 3561 阅读

至于为什么打这个补丁,可阅读 http://wiki.gnashdev.org/Anti-aliasing.

打补丁的具体过程如下:

  1. http://sourceforge.net/project/showfiles.php?group_id=54333 下载 GtkGLExt 的源码包;
  2. http://sourceforge.net/tracker/?atid=473436&group_id=54333&func=browse 获取 "1968044 Multisample (aka FSAA) patch" 补丁文件 gtkglext-multisample.patch;
  3. 执行 "tar jxvf gtkglext-1.2.0.tar.bz2" 命令解开 GtkGLExt 源码包,得到 gtkglext-1.2.0 源文件目录;
  4. 将 gtkglext-multisample.patch 文件复制到 gtkglext-1.2.0 目录;
  5. 在终端中进入 gtkglext-1.2.0 目录,执行 "patch -p1 < gtkglext-multisample.patch" 命令;
  6. 编译安装 gtkglext 即可获得多重采样支持。

在 Gentoo 中,可以通过修改 gtkglext-1.2.0.ebuild 文件,利用 epatch 为源码包打补丁。我修改过的 ebuild 点此下载,使用时需要开启 gtkglext 的 "fsaa" USE 标识。

下图展示了一个 gtkglext 程序在未使用多重采样与使用多重采样的对比效果。

       

另外,即使 gtkglext 不具备多重采样支持,也是可以通过打开显卡三维硬件加速驱动的默认反走样支持来改善图形渲染质量的,譬如,下图所示的 Nvidia 的反走样设置,只是这种方式会作用于所有的三维 OpenGL 程序,即便有的程序为了追求运行效率不希望开启反走样支持。


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter