最終更新:2018-12-26 (水) 11:16:05 (1941d)  

Mesa 3D/環境変数
Top / Mesa 3D / 環境変数

https://www.mesa3d.org/envvars.html

LibGL? environment variables

  • LIBGL_DEBUG? - If defined debug information will be printed to stderr. If set to 'verbose' additional information will be printed.
  • LIBGL_DRIVERS_PATH? - colon-separated list of paths to search for DRI drivers
  • LIBGL_ALWAYS_INDIRECT? - if set to `true`, forces an indirect rendering context/connection.
  • LIBGL_ALWAYS_SOFTWARE? - if set to `true`, always use software rendering
  • LIBGL_NO_DRAWARRAYS? - if set to `true`, do not use DrawArrays? GLX protocol (for debugging)
  • LIBGL_SHOW_FPS? - print framerate to stdout based on the number of glXSwapBuffers? calls per second.
  • LIBGL_DRI3_DISABLE? - disable DRI3 if set to `true`.

Core Mesa environment variables

  • MESA_NO_ASM? - if set, disables all assembly language optimizations
  • MESA_NO_MMX? - if set, disables Intel MMX optimizations
  • MESA_NO_3DNOW? - if set, disables AMD 3DNow! optimizations
  • MESA_NO_SSE? - if set, disables Intel SSE optimizations
  • MESA_NO_ERROR? - if set to 1, error checking is disabled as per KHR_no_error. This will result in undefined behaviour for invalid use of the api, but can reduce CPU use for apps that are known to be error free.
  • MESA_DEBUG? - if set, error messages are printed to stderr. For example, if the application generates a GL_INVALID_ENUM error, a corresponding error message indicating where the error occurred, and possibly why, will be printed to stderr.
  • For release builds, MESA_DEBUG defaults to off (no debug output). MESA_DEBUG accepts the following comma-separated list of named flags, which adds extra behaviour to just set MESA_DEBUG=1:
    • silent - turn off debug messages. Only useful for debug builds.
    • flush - flush after each drawing command
    • incomplete_tex - extra debug messages when a texture is incomplete
    • incomplete_fbo - extra debug messages when a fbo is incomplete
    • context - create a debug context (see GLX_CONTEXT_DEBUG_BIT_ARB) and print error and performance messages to stderr (or MESA_LOG_FILE).
  • MESA_LOG_FILE? - specifies a file name for logging all errors, warnings, etc., rather than stderr
  • MESA_TEX_PROG? - if set, implement conventional texture env modes with fragment programs (intended for developers only)
  • MESA_TNL_PROG? - if set, implement conventional vertex transformation operations with vertex programs (intended for developers only). Setting this variable automatically sets the MESA_TEX_PROG variable as well.
  • MESA_EXTENSION_OVERRIDE? - can be used to enable/disable extensions. A value such as "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension and disable the GL_EXT_bar extension.
  • MESA_EXTENSION_MAX_YEAR? - The GL_EXTENSIONS string returned by Mesa is sorted by extension year. If this variable is set to year X, only extensions defined on or before year X will be reported. This is to work-around a bug in some games where the extension string is copied into a fixed-size buffer without truncating. If the extension string is too long, the buffer overrun can cause the game to crash. This is a work-around for that.
  • MESA_GL_VERSION_OVERRIDE - changes the value returned by glGetString?(GL_VERSION) and possibly the GL API type.
    • The format should be MAJOR.MINOR[FC|COMPAT]
    • FC is an optional suffix that indicates a forward compatible context. This is only valid for versions >= 3.0.
    • COMPAT? is an optional suffix that indicates a compatibility context or GL_ARB_compatibility support. This is only valid for versions >= 3.1.
    • GL versions <= 3.0 are set to a compatibility (non-Core) profile
    • GL versions = 3.1, depending on the driver, it may or may not have the ARB_compatibility extension enabled.
    • GL versions >= 3.2 are set to a Core profile
    • Examples: 2.1, 3.0, 3.0FC, 3.1, 3.1FC, 3.1COMPAT, X.Y, X.YFC, X.YCOMPAT.
      • 2.1 - select a compatibility (non-Core) profile with GL version 2.1.
      • 3.0 - select a compatibility (non-Core) profile with GL version 3.0.
      • 3.0FC - select a Core+Forward Compatible profile with GL version 3.0.
      • 3.1 - select GL version 3.1 with GL_ARB_compatibility enabled per the driver default.
      • 3.1FC - select GL version 3.1 with forward compatibility and GL_ARB_compatibility disabled.
      • 3.1COMPAT - select GL version 3.1 with GL_ARB_compatibility enabled.
      • X.Y - override GL version to X.Y without changing the profile.
      • X.YFC - select a Core+Forward Compatible profile with GL version X.Y.
      • X.YCOMPAT - select a Compatibility profile with GL version X.Y.
    • Mesa may not really implement all the features of the given version. (for developers only)
  • MESA_GLES_VERSION_OVERRIDE? - changes the value returned by glGetString?(GL_VERSION) for OpenGL ES.
    • The format should be MAJOR.MINOR
    • Examples: 2.0, 3.0, 3.1
    • Mesa may not really implement all the features of the given version. (for developers only)
  • MESA_GLSL_VERSION_OVERRIDE? - changes the value returned by glGetString?(GL_SHADING_LANGUAGE_VERSION). Valid values are integers, such as "130". Mesa will not really implement all the features of the given language version if it's higher than what's normally reported. (for developers only)
  • MESA_GLSL_CACHE_DISABLE? - if set to `true`, disables the GLSL shader cache
  • MESA_GLSL_CACHE_MAX_SIZE? - if set, determines the maximum size of the on-disk cache of compiled GLSL programs. Should be set to a number optionally followed by 'K', 'M', or 'G' to specify a size in kilobytes, megabytes, or gigabytes. By default, gigabytes will be assumed. And if unset, a maximum size of 1GB will be used. Note: A separate cache might be created for each architecture that Mesa is installed for on your system. For example under the default settings you may end up with a 1GB cache for x86_64 and another 1GB cache for i386.
  • MESA_GLSL_CACHE_DIR? - if set, determines the directory to be used for the on-disk cache of compiled GLSL programs. If this variable is not set, then the cache will be stored in $XDG_CACHE_HOME/mesa_shader_cache (if that variable is set), or else within .cache/mesa_shader_cache within the user's home directory.
  • MESA_GLSL? - shading language compiler options
  • MESA_NO_MINMAX_CACHE? - when set, the minmax index cache is globally disabled.
  • MESA_SHADER_CAPTURE_PATH? - see Capturing Shaders
  • MESA_SHADER_DUMP_PATH? and MESA_SHADER_READ_PATH - see Experimenting with Shader Replacements
  • MESA_VK_VERSION_OVERRIDE? - changes the Vulkan physical device version as returned in VkPhysicalDeviceProperties?::apiVersion.
    • The format should be MAJOR.MINOR[.PATCH]
    • This will not let you force a version higher than the driver's instance versionas advertised by vkEnumerateInstanceVersion?
    • This can be very useful for debugging but some features may not be implemented correctly. (For developers only)