# libgliar - a library that can fake the OpenGL context info returned by
# the glGet OpenGL calls
#
-# authored by: Eleni Maria Stea <elene.mst@gmail.com>
+# Copyright (C) 2013 Canonical Ltd
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+# Author: Eleni Maria Stea <elene.mst@gmail.com>
For instructions on how to build the code, see the INSTALL file.
Usage:
------
-LD_PRELOAD=./libgliar.so <opengl_executable>
+gliar <opengl_executable>
The library will read the gliar.conf file in the user's library directory or
the .gliar.conf file in the user's home directory.
valueN
Currently supported keys:
-"vendor" (the vendor string), "extensions" (the extensions string), "version" (the opengl version string)
-
-Example:
----------
-gliar.conf:
-[vendor]
-Mutant Stargoat
-
-[extensions]
-GL_MSG_hikiko_ext
-GL_MSG_test
-
-$ LD_PRELOAD=./libgliar glxinfo | grep -A2 "OpenGL extensions"
-OpenGL extensions:
- GL_MSG_hikiko_ext, GL_MSG_test
-
+vendor
+renderer
+version
+sl version
+extensions
+major version
+minor version
+max texture units
+max texture image units
+max combined texture image units
+max vertex texture image units
+max texture size
+max cube map texture size
+max texture coordinates
+max vertex attributes
+max vertex uniform vectors
+max fragment uniform vectors
+max varying vectors
+max color attachments
+max renderbuffer size ext
+max program attribs arb
+v max program instructions arb
+v max program native instructions arb
+v max program temporaries arb
+v max program native temporaries arb
+v max program parameters arb
+v max program native parameters arb
+v max program attribs arb
+v max program native attribs arb
+v max program address registers arb
+v max program native address registers arb
+v max program local parameters arb
+v max program env parameters arb
+v max program alu instructions arb
+v max program native alu instructions arb
+f max program instructions arb
+f max program native instructions arb
+f max program temporaries arb
+f max program native temporaries arb
+f max program parameters arb
+f max program native parameters arb
+f max program attribs arb
+f max program native attribs arb
+f max program address registers arb
+f max program native address registers arb
+f max program local parameters arb
+f max program env parameters arb
+f max program alu instructions arb
+f max program native alu instructions arb
+max program instructions arb
+max program native instructions arb
+max program temporaries arb
+max program native temporaries arb
+max program parameters arb
+max program native parameters arb
+max program attribs arb
+max program native attribs arb
+max program address registers arb
+max program native address registers arb
+max program local parameters arb
+max program env parameters arb
+max program alu instructions arb
+max program native alu instructions arb
+Example configuration files can be found in the directory examples.
+Example video: http://www.youtube.com/watch?v=v2UDGgb6AgA
+Note: The library can only restrict the capabilities of a GPU, not "emulate" non supported extensions for
+example. If the gliar.conf contains an extension that is not supported by the user's real GPU, the library
+will return a warning and the user's program might crash.