| Application Issues |
| ================== |
| |
| This page documents known issues with some OpenGL applications. |
| |
| Topogun |
| ------- |
| |
| `Topogun <http://www.topogun.com/>`__ for Linux (version 2, at least) |
| creates a GLX visual without requesting a depth buffer. This causes bad |
| rendering if the OpenGL driver happens to choose a visual without a |
| depth buffer. |
| |
| Mesa 9.1.2 and later (will) support a DRI configuration option to work |
| around this issue. Using the |
| `driconf <https://dri.freedesktop.org/wiki/DriConf>`__ tool, set the |
| "Create all visuals with a depth buffer" option before running Topogun. |
| Then, all GLX visuals will be created with a depth buffer. |
| |
| Old OpenGL games |
| ---------------- |
| |
| Some old OpenGL games (approx. ten years or older) may crash during |
| start-up because of an extension string buffer-overflow problem. |
| |
| The problem is a modern OpenGL driver will return a very long string for |
| the ``glGetString(GL_EXTENSIONS)`` query and if the application naively |
| copies the string into a fixed-size buffer it can overflow the buffer |
| and crash the application. |
| |
| The work-around is to set the ``MESA_EXTENSION_MAX_YEAR`` environment |
| variable to the approximate release year of the game. This will cause |
| the ``glGetString(GL_EXTENSIONS)`` query to only report extensions older |
| than the given year. |
| |
| For example, if the game was released in 2001, do |
| |
| .. code-block:: console |
| |
| export MESA_EXTENSION_MAX_YEAR=2001 |
| |
| before running the game. |
| |
| Viewperf |
| -------- |
| |
| See the :doc:`Viewperf issues <viewperf>` page for a detailed list of |
| Viewperf issues. |