mirror of
https://github.com/nigels-com/glew.git
synced 2024-11-26 07:41:58 +00:00
Add templated documentation generation for reducing release workflow
git-svn-id: https://glew.svn.sourceforge.net/svnroot/glew/trunk/glew@566 783a27ee-832a-0410-bc00-9f386506c6dd
This commit is contained in:
parent
94a2390e65
commit
44e4a41799
178
auto/doc/advanced.html
Normal file
178
auto/doc/advanced.html
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
<h1>The OpenGL Extension Wrangler Library</h1>
|
||||||
|
|
||||||
|
<h2>Automatic Code Generation</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Starting from release 1.1.0, the source code and parts of the
|
||||||
|
documentation are automatically generated from the extension
|
||||||
|
specifications in a two-step process. In the first step,
|
||||||
|
specification files from the OpenGL registry are downloaded and
|
||||||
|
parsed. Skeleton descriptors are created for each extension. These
|
||||||
|
descriptors contain all necessary information for creating the source
|
||||||
|
code and documentation in a simple and compact format, including the
|
||||||
|
name of the extension, url link to the specification, tokens, function
|
||||||
|
declarations, typedefs and struct definitions. In the second step,
|
||||||
|
the header files as well as the library and glewinfo source are
|
||||||
|
generated from the descriptor files. The code generation scripts are
|
||||||
|
located in the <tt>auto</tt> subdirectory.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The code generation scripts require GNU make, wget, and perl. On
|
||||||
|
Windows, the simplest way to get access to these tools is to install
|
||||||
|
<a href="http://www.cygwin.com/">Cygwin</a>, but make sure that the
|
||||||
|
root directory is mounted in binary mode. The makefile in the
|
||||||
|
<tt>auto</tt> directory provides the following build targets:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<center>
|
||||||
|
<table border=0 cellpadding=0 cellspacing=0> <!-- bgcolor="#f0f0f0" -->
|
||||||
|
<tr><td align="right" valign="top" width="25%"><tt>make</tt></td>
|
||||||
|
<td> </td>
|
||||||
|
<td align=left>Create the source files from the descriptors. If the
|
||||||
|
descriptors do not exist, create them from the spec files. If the spec
|
||||||
|
files do not exist, download them from the OpenGL repository.</td></tr>
|
||||||
|
<tr><td align="right" valign="top"><tt>make clean</tt></td>
|
||||||
|
<td> </td>
|
||||||
|
<td align=left>Delete the source files.</td></tr>
|
||||||
|
<tr><td align="right" valign="top"><tt>make clobber</tt></td>
|
||||||
|
<td> </td>
|
||||||
|
<td align=left>Delete the source files and the descriptors.</td></tr>
|
||||||
|
<tr><td align="right" valign="top"><tt>make destroy</tt></td>
|
||||||
|
<td> </td>
|
||||||
|
<td align=left>Delete the source files, the descriptors, and the spec files.</td></tr>
|
||||||
|
<tr><td align="right" valign="top"><tt>make custom</tt></td>
|
||||||
|
<td> </td>
|
||||||
|
<td align=left>Create the source files for the extensions
|
||||||
|
listed in <tt>auto/custom.txt</tt>. See "Custom Code
|
||||||
|
Generation" below for more details.</td></tr>
|
||||||
|
</table>
|
||||||
|
</center>
|
||||||
|
|
||||||
|
<h3>Adding a New Extension</h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
To add a new extension, create a descriptor file for the extension in
|
||||||
|
<tt>auto/core</tt> and rerun the code generation scripts by typing
|
||||||
|
<tt>make clean; make</tt> in the <tt>auto</tt> directory.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The format of the descriptor file is given below. Items in
|
||||||
|
brackets are optional.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
<Extension Name><br>
|
||||||
|
[<URL of Specification File>]<br>
|
||||||
|
[<Token Name> <Token Value>]<br>
|
||||||
|
[<Token Name> <Token Value>]<br>
|
||||||
|
...<br>
|
||||||
|
[<Typedef>]<br>
|
||||||
|
[<Typedef>]<br>
|
||||||
|
...<br>
|
||||||
|
[<Function Signature>]<br>
|
||||||
|
[<Function Signature>]<br>
|
||||||
|
...<br>
|
||||||
|
<!-- [<Function Definition>]<br>
|
||||||
|
[<Function Definition>]<br>
|
||||||
|
...<br> -->
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<p>
|
||||||
|
Note that <tt>Function Definitions</tt> are copied to the header files
|
||||||
|
without changes and have to be terminated with a semicolon. In
|
||||||
|
contrast, <tt>Tokens</tt>, <tt>Function signatures</tt>, and
|
||||||
|
<tt>Typedefs</tt> should not be terminated with a semicolon.
|
||||||
|
</p>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Take a look at one of the files in <tt>auto/core</tt> for an
|
||||||
|
example. Note that typedefs and function signatures should not be
|
||||||
|
terminated with a semicolon.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3>Custom Code Generation</h3>
|
||||||
|
<p>
|
||||||
|
Starting from GLEW 1.3.0, it is possible to control which extensions
|
||||||
|
to include in the libarary by specifying a list in
|
||||||
|
<tt>auto/custom.txt</tt>. This is useful when you do not need all the
|
||||||
|
extensions and would like to reduce the size of the source files.
|
||||||
|
Type <tt>make clean; make custom</tt> in the <tt>auto</tt> directory
|
||||||
|
to rerun the scripts with the custom list of extensions.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
For example, the following is the list of extensions needed to get GLEW and the
|
||||||
|
utilities to compile.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
WGL_ARB_extensions_string<br>
|
||||||
|
WGL_ARB_multisample<br>
|
||||||
|
WGL_ARB_pixel_format<br>
|
||||||
|
WGL_ARB_pbuffer<br>
|
||||||
|
WGL_EXT_extensions_string<br>
|
||||||
|
WGL_ATI_pixel_format_float<br>
|
||||||
|
WGL_NV_float_buffer<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Multiple Rendering Contexts (GLEW MX)</h2>
|
||||||
|
|
||||||
|
<p>Starting with release 1.2.0, thread-safe support for multiple
|
||||||
|
rendering contexts, possibly with different capabilities, is
|
||||||
|
available. Since this is not required by most users, it is not added
|
||||||
|
to the binary releases to maintain compatibility between different
|
||||||
|
versions. To include multi-context support, you have to do the
|
||||||
|
following:</p>
|
||||||
|
<ol>
|
||||||
|
<li>Compile and use GLEW with the <tt>GLEW_MX</tt> preprocessor token
|
||||||
|
defined.</li>
|
||||||
|
<li>For each rendering context, create a <tt>GLEWContext</tt> object
|
||||||
|
that will be available as long as the rendering context exists.</li>
|
||||||
|
<li>Define a macro or function called <tt>glewGetContext()</tt> that
|
||||||
|
returns a pointer to the <tt>GLEWContext</tt> object associated with
|
||||||
|
the rendering context from which OpenGL/WGL/GLX calls are issued. This
|
||||||
|
dispatch mechanism is primitive, but generic.
|
||||||
|
<li>Make sure that you call <tt>glewInit()</tt> after creating the
|
||||||
|
<tt>GLEWContext</tt> object in each rendering context. Note, that the
|
||||||
|
<tt>GLEWContext</tt> pointer returned by <tt>glewGetContext()</tt> has
|
||||||
|
to reside in global or thread-local memory.
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<p>Note that according to the <a
|
||||||
|
href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/ntopnglr_6yer.asp">MSDN
|
||||||
|
WGL documentation</a>, you have to initialize the entry points for
|
||||||
|
every rendering context that use pixel formats with different
|
||||||
|
capabilities For example, the pixel formats provided by the generic
|
||||||
|
software OpenGL implementation by Microsoft vs. the hardware
|
||||||
|
accelerated pixel formats have different capabilities. <b>GLEW by
|
||||||
|
default ignores this requirement, and does not define per-context
|
||||||
|
entry points (you can however do this using the steps described
|
||||||
|
above).</b> Assuming a global namespace for the entry points works in
|
||||||
|
most situations, because typically all hardware accelerated pixel
|
||||||
|
formats provide the same entry points and capabilities. This means
|
||||||
|
that unless you use the multi-context version of GLEW, you need to
|
||||||
|
call <tt>glewInit()</tt> only once in your program, or more precisely,
|
||||||
|
once per process.</p>
|
||||||
|
|
||||||
|
<h2>Separate Namespace</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
To avoid name clashes when linking with libraries that include the
|
||||||
|
same symbols, extension entry points are declared in a separate
|
||||||
|
namespace (release 1.1.0 and up). This is achieved by aliasing OpenGL
|
||||||
|
function names to their GLEW equivalents. For instance,
|
||||||
|
<tt>glFancyFunction</tt> is simply an alias to
|
||||||
|
<tt>glewFancyFunction</tt>. The separate namespace does not effect
|
||||||
|
token and function pointer definitions.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Known Issues</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
GLEW requires GLX 1.2 for compatibility with GLUT.
|
||||||
|
</p>
|
||||||
|
|
182
auto/doc/basic.html
Normal file
182
auto/doc/basic.html
Normal file
@ -0,0 +1,182 @@
|
|||||||
|
<h1>The OpenGL Extension Wrangler Library</h1>
|
||||||
|
|
||||||
|
<h2>Initializing GLEW</h2>
|
||||||
|
<p>
|
||||||
|
First you need to create a valid OpenGL rendering context and call
|
||||||
|
<tt>glewInit()</tt> to initialize the extension entry points. If
|
||||||
|
<tt>glewInit()</tt> returns <tt>GLEW_OK</tt>, the initialization
|
||||||
|
succeeded and you can use the available extensions as well as core
|
||||||
|
OpenGL functionality. For example:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
#include <GL/glew.h><br>
|
||||||
|
#include <GL/glut.h><br>
|
||||||
|
...<br>
|
||||||
|
glutInit(&argc, argv);<br>
|
||||||
|
glutCreateWindow("GLEW Test");<br>
|
||||||
|
GLenum err = glewInit();<br>
|
||||||
|
if (GLEW_OK != err)<br>
|
||||||
|
{<br>
|
||||||
|
/* Problem: glewInit failed, something is seriously wrong. */<br>
|
||||||
|
fprintf(stderr, "Error: %s\n", glewGetErrorString(err));<br>
|
||||||
|
...<br>
|
||||||
|
}<br>
|
||||||
|
fprintf(stdout, "Status: Using GLEW %s\n", glewGetString(GLEW_VERSION));<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Checking for Extensions</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Starting from GLEW 1.1.0, you can find out if a particular extension
|
||||||
|
is available on your platform by querying globally defined variables
|
||||||
|
of the form <tt>GLEW_{extension_name}</tt>:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
if (GLEW_ARB_vertex_program)<br>
|
||||||
|
{<br>
|
||||||
|
/* It is safe to use the ARB_vertex_program extension here. */<br>
|
||||||
|
glGenProgramsARB(...);<br>
|
||||||
|
}<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<b>In GLEW 1.0.x, a global structure was used for this task. To ensure
|
||||||
|
binary compatibility between releases, the struct was replaced with a
|
||||||
|
set of variables.</b>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
You can also check for core OpenGL functionality. For example, to
|
||||||
|
see if OpenGL 1.3 is supported, do the following:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
if (GLEW_VERSION_1_3)<br>
|
||||||
|
{<br>
|
||||||
|
/* Yay! OpenGL 1.3 is supported! */<br>
|
||||||
|
}<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
In general, you can check if <tt>GLEW_{extension_name}</tt> or
|
||||||
|
<tt>GLEW_VERSION_{version}</tt> is true or false.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
It is also possible to perform extension checks from string
|
||||||
|
input. Starting from the 1.3.0 release, use <tt>glewIsSupported</tt>
|
||||||
|
to check if the required core or extension functionality is
|
||||||
|
available:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
if (glewIsSupported("GL_VERSION_1_4 GL_ARB_point_sprite"))<br>
|
||||||
|
{<br>
|
||||||
|
/* Great, we have OpenGL 1.4 + point sprites. */<br>
|
||||||
|
}<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
For extensions only, <tt>glewGetExtension</tt> provides a slower alternative
|
||||||
|
(GLEW 1.0.x-1.2.x). <b>Note that in the 1.3.0 release </b>
|
||||||
|
<tt>glewGetExtension</tt> <b>was replaced with </b>
|
||||||
|
<tt>glewIsSupported</tt>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
if (glewGetExtension("GL_ARB_fragment_program"))<br>
|
||||||
|
{<br>
|
||||||
|
/* Looks like ARB_fragment_program is supported. */<br>
|
||||||
|
}<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Experimental Drivers</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
GLEW obtains information on the supported extensions from the graphics
|
||||||
|
driver. Experimental or pre-release drivers, however, might not
|
||||||
|
report every available extension through the standard mechanism, in
|
||||||
|
which case GLEW will report it unsupported. To circumvent this
|
||||||
|
situation, the <tt>glewExperimental</tt> global switch can be turned
|
||||||
|
on by setting it to <tt>GL_TRUE</tt> before calling
|
||||||
|
<tt>glewInit()</tt>, which ensures that all extensions with valid
|
||||||
|
entry points will be exposed.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Platform Specific Extensions</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Platform specific extensions are separated into two header files:
|
||||||
|
<tt>wglew.h</tt> and <tt>glxew.h</tt>, which define the available
|
||||||
|
<tt>WGL</tt> and <tt>GLX</tt> extensions. To determine if a certain
|
||||||
|
extension is supported, query <tt>WGLEW_{extension name}</tt> or
|
||||||
|
<tt>GLXEW_{extension_name}</tt>. For example:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
#include <GL/wglew.h><br>
|
||||||
|
<br>
|
||||||
|
if (WGLEW_ARB_pbuffer)<br>
|
||||||
|
{<br>
|
||||||
|
/* OK, we can use pbuffers. */<br>
|
||||||
|
}<br>
|
||||||
|
else<br>
|
||||||
|
{<br>
|
||||||
|
/* Sorry, pbuffers will not work on this platform. */<br>
|
||||||
|
}<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Alternatively, use <tt>wglewIsSupported</tt> or
|
||||||
|
<tt>glxewIsSupported</tt> to check for extensions from a string:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
if (wglewIsSupported("WGL_ARB_pbuffer"))<br>
|
||||||
|
{<br>
|
||||||
|
/* OK, we can use pbuffers. */<br>
|
||||||
|
}<br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Utilities</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
GLEW provides two command-line utilities: one for creating a list of
|
||||||
|
available extensions and visuals; and another for verifying extension
|
||||||
|
entry points.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3>visualinfo: extensions and visuals</h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<tt>visualinfo</tt> is an extended version of <tt>glxinfo</tt>. The
|
||||||
|
Windows version creates a file called <tt>visualinfo.txt</tt>, which
|
||||||
|
contains a list of available OpenGL, WGL, and GLU extensions as well
|
||||||
|
as a table of visuals aka. pixel formats. Pbuffer and MRT capable
|
||||||
|
visuals are also included. For additional usage information, type
|
||||||
|
<tt>visualinfo -h</tt>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3>glewinfo: extension verification utility</h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<tt>glewinfo</tt> allows you to verify the entry points for the
|
||||||
|
extensions supported on your platform. The Windows version
|
||||||
|
reports the results to a text file called <tt>glewinfo.txt</tt>. The
|
||||||
|
Unix version prints the results to <tt>stdout</tt>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>Windows usage:</p>
|
||||||
|
<blockquote><pre>glewinfo [-pf <id>]</pre></blockquote>
|
||||||
|
|
||||||
|
<p>where <tt><id></tt> is the pixel format id for which the
|
||||||
|
capabilities are displayed.</p>
|
||||||
|
|
||||||
|
<p>Unix usage:</p>
|
||||||
|
<blockquote><pre>glewinfo [-display <dpy>] [-visual <id>]</pre></blockquote>
|
||||||
|
|
||||||
|
<p>where <tt><dpy></tt> is the X11 display and <tt><id></tt> is
|
||||||
|
the visual id for which the capabilities are displayed.</p>
|
||||||
|
|
28
auto/doc/credits.html
Normal file
28
auto/doc/credits.html
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
<h1>The OpenGL Extension Wrangler Library</h1>
|
||||||
|
|
||||||
|
<h2>Credits</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
GLEW was developed by <a href="http://www.cs.utah.edu/~ikits/">Milan
|
||||||
|
Ikits</a> and <a
|
||||||
|
href="http://wwwvis.informatik.uni-stuttgart.de/~magallon/">Marcelo
|
||||||
|
Magallon</a>. They also perform occasional maintainance to make sure
|
||||||
|
that GLEW stays in mint condition. Aaron Lefohn, Joe Kniss, and Chris
|
||||||
|
Wyman were the first users and also assisted with the design and
|
||||||
|
debugging process. The acronym GLEW originates from Aaron Lefohn.
|
||||||
|
Pasi Kärkkäinen identified and fixed several problems with
|
||||||
|
GLX and SDL. Nate Robins created the <tt>wglinfo</tt> utility, to
|
||||||
|
which modifications were made by Michael Wimmer.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Copyright</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
GLEW is originally derived from the <a
|
||||||
|
href="http://www.levp.de/3d/">EXTGL</a> project by Lev Povalahev. The
|
||||||
|
source code is licensed under the <a href="glew.txt">Modified BSD
|
||||||
|
License</a>, the <a href="mesa.txt">Mesa 3-D License</a> (MIT
|
||||||
|
License), and the <a href="khronos.txt">Khronos License</a> (MIT
|
||||||
|
License). The automatic code generation scripts are released under
|
||||||
|
the <a href="gpl.txt">GNU GPL</a>.
|
||||||
|
</p>
|
131
auto/doc/index.html
Normal file
131
auto/doc/index.html
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
<h1>The OpenGL Extension Wrangler Library</h1>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform
|
||||||
|
open-source C/C++ extension loading library. GLEW provides efficient
|
||||||
|
run-time mechanisms for determining which OpenGL extensions are
|
||||||
|
supported on the target platform. OpenGL core and extension
|
||||||
|
functionality is exposed in a single header file. GLEW has been
|
||||||
|
tested on a variety of operating systems, including Windows, Linux,
|
||||||
|
Mac OS X, FreeBSD, Irix, and Solaris.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Download Center</h2>
|
||||||
|
<p>
|
||||||
|
<a href="http://sourceforge.net/projects/glew/">GLEW</a> is distributed
|
||||||
|
as source and precompiled binaries. The latest release is
|
||||||
|
<a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=637800">1.5.1</a>
|
||||||
|
[11-03-08]:
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<table border="1" cellpadding="5" cellspacing="0" bgcolor="#f0f0f0" align="center">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<table border="0" cellpadding="3" cellspacing="0">
|
||||||
|
<tr>
|
||||||
|
<td></td>
|
||||||
|
<td align="right"><b>Source</b></td>
|
||||||
|
<td></td>
|
||||||
|
<td align="left"><a href="https://sourceforge.net/project/downloading.php?group_id=67586&filename=glew-1.5.1-src.zip">ZIP</a> | <a href="https://sourceforge.net/project/downloading.php?group_id=67586&filename=glew-1.5.1-src.tgz">TGZ</a></td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td></td>
|
||||||
|
<td align="right"><b>Binaries</b></td>
|
||||||
|
<td></td>
|
||||||
|
<td align="left"><a
|
||||||
|
href="https://sourceforge.net/project/downloading.php?group_id=67586&filename=glew-1.5.1-win32.zip">Windows</a> | <a
|
||||||
|
href="https://sourceforge.net/project/downloading.php?group_id=67586&filename=glew-1.5.1-linux32.tgz">Linux</a> | OS X (<a href="https://sourceforge.net/project/downloading.php?group_id=67586&filename=glew-1.5.1-darwin32-agl.tgz">AGL</a>,<a href="https://sourceforge.net/project/downloading.php?group_id=67586&filename=glew-1.5.1-darwin32-glx.tgz">GLX</a>)
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<p></p>
|
||||||
|
<p>
|
||||||
|
An up-to-date copy is also available from the <a
|
||||||
|
href="http://glew.svn.sourceforge.net/svnroot/glew/trunk/glew/">project
|
||||||
|
repository</a>:
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<tt>svn co https://glew.svn.sourceforge.net/svnroot/glew/trunk/glew glew</tt>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Supported Extensions</h2>
|
||||||
|
<p>
|
||||||
|
The latest release contains support for OpenGL 3.0 and the following extensions:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li><a href="glew.html">OpenGL extensions</a>
|
||||||
|
<li><a href="wglew.html">WGL extensions</a>
|
||||||
|
<li><a href="glxew.html">GLX extensions</a>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>News</h2>
|
||||||
|
<ul>
|
||||||
|
<li>[11-03-08] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=637800">GLEW
|
||||||
|
1.5.1</a> adds support for OpenGL 3.0 and 31 new extensions</li>
|
||||||
|
<li>[12-27-07] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=564464">GLEW
|
||||||
|
1.5.0</a> is released under less restrictive licenses</li>
|
||||||
|
<li>[04-27-07] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=504079">GLEW
|
||||||
|
1.4.0</a> is released</li>
|
||||||
|
<li>[03-08-07] GLEW is included in the <a href="http://developer.nvidia.com/object/sdk_home.html">NVIDIA OpenGL SDK</a></li>
|
||||||
|
<li>[03-04-07] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=491113">GLEW
|
||||||
|
1.3.6</a> is released</li>
|
||||||
|
<li>[02-28-07] <a href="http://glew.svn.sourceforge.net/svnroot/glew/trunk/glew/">Repository</a> is migrated to SVN</li>
|
||||||
|
<li>[02-25-07] GLEW is included in the <a href="http://www.opengl.org/sdk/">OpenGL
|
||||||
|
SDK</a></li>
|
||||||
|
<li>[11-21-06] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=465334">GLEW
|
||||||
|
1.3.5</a> adds OpenGL 2.1 and NVIDIA G80 extensions</li>
|
||||||
|
<li>[03-04-06] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=398455">GLEW
|
||||||
|
1.3.4</a> adds support for five new extensions</li>
|
||||||
|
<li>[05-16-05] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=327647">GLEW
|
||||||
|
1.3.3</a> is released</li>
|
||||||
|
<li>[03-16-05] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=313345">GLEW
|
||||||
|
1.3.2</a> adds support for GL_APPLE_pixel_buffer</li>
|
||||||
|
<li>[02-11-05] <a href="http://gljava.sourceforge.net/">gljava</a>
|
||||||
|
and <a href="http://sdljava.sourceforge.net/">sdljava</a> provide
|
||||||
|
a Java binding to OpenGL via GLEW</li>
|
||||||
|
<li>[02-02-05] <a
|
||||||
|
href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=302049">GLEW 1.3.1</a> adds support for <a href="http://www.opengl.org/documentation/extensions/EXT_framebuffer_object.txt">GL_EXT_framebuffer_object</a></li>
|
||||||
|
<li>[01-04-05] <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=294527">GLEW 1.3.0</a> adds core OpenGL 2.0 support plus many enhancements</li>
|
||||||
|
<li>[12-22-04] <a href="http://glewpy.sf.net/">GLEWpy</a> Python wrapper announced</li>
|
||||||
|
<li>[12-12-04] <a
|
||||||
|
href="https://sourceforge.net/mail/?group_id=67586">Mailing lists</a> created on sourceforge</li>
|
||||||
|
<li>[12-06-04] <a
|
||||||
|
href="http://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=287948"></li>
|
||||||
|
GLEW 1.2.5</a> adds new extensions and support for FreeBSD</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Links</h2>
|
||||||
|
<ul>
|
||||||
|
<li><a
|
||||||
|
href="http://www.opengl.org/sdk/">
|
||||||
|
OpenGL Software Development Kit</a></li>
|
||||||
|
<li><a
|
||||||
|
href="http://www.opengl.org/resources/features/OGLextensions/">
|
||||||
|
All About OpenGL Extensions</a></li>
|
||||||
|
<li><a href="http://www.opengl.org/registry/">OpenGL Extension Registry</a></li>
|
||||||
|
<li><a
|
||||||
|
href="http://ati.amd.com/developer/sdk/radeonSDK/html/info/Prog3D.html">ATI
|
||||||
|
OpenGL Extension Specifications</a></li>
|
||||||
|
<li><a
|
||||||
|
href="http://developer.apple.com/graphicsimaging/opengl/extensions.html">
|
||||||
|
APPLE OpenGL Extensions Guide</a></li>
|
||||||
|
<li><a
|
||||||
|
href="http://developer.nvidia.com/object/nvidia_opengl_specs.html">NVIDIA
|
||||||
|
OpenGL Extension Specifications</a></li>
|
||||||
|
</ul>
|
||||||
|
|
128
auto/doc/install.html
Normal file
128
auto/doc/install.html
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
<h1>The OpenGL Extension Wrangler Library</h1>
|
||||||
|
|
||||||
|
<h2>Installation</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
To use the shared library version of GLEW, you need to copy the
|
||||||
|
headers and libraries into their destination directories. On Windows
|
||||||
|
this typically boils down to copying:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<table border="0" cellpadding="0" cellspacing="0" align="center"> <!-- bgcolor="#f0f0f0" -->
|
||||||
|
<tr><td align="left"><tt>bin/glew32.dll</tt></td><td> to </td>
|
||||||
|
<td align="left"><tt>%SystemRoot%/system32</tt></td></tr>
|
||||||
|
<tr><td align="left"><tt>lib/glew32.lib</tt></td><td> to </td>
|
||||||
|
<td align="left"><tt>{VC Root}/Lib</tt></td></tr>
|
||||||
|
<tr><td align="left"><tt>include/GL/glew.h</tt></td><td> to </td>
|
||||||
|
<td align="left"><tt>{VC Root}/Include/GL</tt></td></tr>
|
||||||
|
<tr><td align="left"><tt>include/GL/wglew.h</tt></td><td> to </td>
|
||||||
|
<td align="left"><tt>{VC Root}/Include/GL</tt></td></tr>
|
||||||
|
</table>
|
||||||
|
<p>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
where <tt>{VC Root}</tt> is the Visual C++ root directory, typically
|
||||||
|
<tt>C:/Program Files/Microsoft Visual Studio/VC98</tt> for Visual
|
||||||
|
Studio 6.0 or <tt>C:/Program Files/Microsoft Visual
|
||||||
|
Studio .NET 2003/Vc7/PlatformSDK</tt> for Visual Studio .NET.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
On Unix, typing <tt>make install</tt> will attempt to install GLEW
|
||||||
|
into <tt>/usr/include/GL</tt> and <tt>/usr/lib</tt>. You can
|
||||||
|
customize the installation target via the <tt>GLEW_DEST</tt>
|
||||||
|
environment variable if you do not have write access to these
|
||||||
|
directories.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Building Your Project with GLEW</h2>
|
||||||
|
<p>
|
||||||
|
There are two ways to build your project with GLEW.
|
||||||
|
</p>
|
||||||
|
<h3>Including the source files / project file</h3>
|
||||||
|
<p>
|
||||||
|
The simpler but less flexible way is to include <tt>glew.h</tt> and
|
||||||
|
<tt>glew.c</tt> into your project. On Windows, you also need to
|
||||||
|
define the <tt>GLEW_STATIC</tt> preprocessor token when building a
|
||||||
|
static library or executable, and the <tt>GLEW_BUILD</tt> preprocessor
|
||||||
|
token when building a dll. You also need to replace
|
||||||
|
<tt><GL/gl.h></tt> and <tt><GL/glu.h></tt> with
|
||||||
|
<tt><glew.h></tt> in your code and set the appropriate include
|
||||||
|
flag (<tt>-I</tt>) to tell the compiler where to look for it. For
|
||||||
|
example:
|
||||||
|
</p>
|
||||||
|
<p class="pre">
|
||||||
|
#include <glew.h><br>
|
||||||
|
#include <GL/glut.h><br>
|
||||||
|
<gl, glu, and glut functionality is available here><br>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Depending on where you put <tt>glew.h</tt> you may also need to change
|
||||||
|
the include directives in <tt>glew.c</tt>. Note that if you are using
|
||||||
|
GLEW together with GLUT, you have to include <tt>glew.h</tt> first.
|
||||||
|
In addition, <tt>glew.h</tt> includes <tt>glu.h</tt>, so you do not
|
||||||
|
need to include it separately.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
On Windows, you also have the option of adding the supplied project
|
||||||
|
file <tt>glew_static.dsp</tt> to your workspace (solution) and compile
|
||||||
|
it together with your other projects. In this case you also need to
|
||||||
|
change the <tt>GLEW_BUILD</tt> preprocessor constant to
|
||||||
|
<tt>GLEW_STATIC</tt> when building a static library or executable,
|
||||||
|
otherwise you get build errors.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<b>Note that GLEW does not use the C
|
||||||
|
runtime library, so it does not matter which version (single-threaded,
|
||||||
|
multi-threaded or multi-threaded DLL) it is linked with (without
|
||||||
|
debugging information). It is, however, always a good idea to compile all
|
||||||
|
your projects including GLEW with the same C runtime settings.</b>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3>Using GLEW as a shared library</h3>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Alternatively, you can use the provided project files / makefile to
|
||||||
|
build a separate shared library you can link your projects with later.
|
||||||
|
In this case the best practice is to install <tt>glew.h</tt>,
|
||||||
|
<tt>glew32.lib</tt>, and <tt>glew32.dll</tt> / <tt>libGLEW.so</tt> to
|
||||||
|
where the OpenGL equivalents <tt>gl.h</tt>, <tt>opengl32.lib</tt>, and
|
||||||
|
<tt>opengl32.dll</tt> / <tt>libGL.so</tt> are located. Note that you
|
||||||
|
need administrative privileges to do this. If you do not have
|
||||||
|
administrator access and your system administrator will not do it for
|
||||||
|
you, you can install GLEW into your own lib and include subdirectories
|
||||||
|
and tell the compiler where to find it. Then you can just replace
|
||||||
|
<tt><GL/gl.h></tt> with <tt><GL/glew.h></tt> in your
|
||||||
|
program:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
#include <GL/glew.h><br>
|
||||||
|
#include <GL/glut.h><br>
|
||||||
|
<gl, glu, and glut functionality is available here><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
or:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="pre">
|
||||||
|
#include <GL/glew.h><br>
|
||||||
|
<gl and glu functionality is available here><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Remember to link your project with <tt>glew32.lib</tt>,
|
||||||
|
<tt>glu32.lib</tt>, and <tt>opengl32.lib</tt> on Windows and
|
||||||
|
<tt>libGLEW.so</tt>, <tt>libGLU.so</tt>, and <tt>libGL.so</tt> on
|
||||||
|
Unix (<tt>-lGLEW -lGLU -lGL</tt>).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
It is important to keep in mind that <tt>glew.h</tt> includes neither
|
||||||
|
<tt>windows.h</tt> nor <tt>gl.h</tt>. Also, GLEW will warn you by
|
||||||
|
issuing a preprocessor error in case you have included <tt>gl.h</tt>,
|
||||||
|
<tt>glext.h</tt>, or <tt>glATI.h</tt> before <tt>glew.h</tt>.
|
||||||
|
</p>
|
||||||
|
|
465
auto/doc/log.html
Normal file
465
auto/doc/log.html
Normal file
@ -0,0 +1,465 @@
|
|||||||
|
<h1>The OpenGL Extension Wrangler Library</h1>
|
||||||
|
|
||||||
|
<h2>Change Log</h2>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.5.1</b> [11-03-08]
|
||||||
|
<ul>
|
||||||
|
<li> New features:
|
||||||
|
<ul>
|
||||||
|
<li> Support for OpenGL 3.0
|
||||||
|
</ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_ARB_depth_buffer_float
|
||||||
|
<li> GL_ARB_draw_instance,
|
||||||
|
<li> GL_ARB_framebuffer_object
|
||||||
|
<li> GL_ARB_framebuffer_sRGB
|
||||||
|
<li> GL_ARB_geometry_shader4
|
||||||
|
<li> GL_ARB_half_float_pixel
|
||||||
|
<li> GL_ARB_half_float_vertex
|
||||||
|
<li> GL_ARB_instanced_arrays
|
||||||
|
<li> GL_ARB_map_buffer_range
|
||||||
|
<li> GL_ARB_texture_buffer_object
|
||||||
|
<li> GL_ARB_texture_compression_rgtc
|
||||||
|
<li> GL_ARB_vertex_array_object
|
||||||
|
<li> GL_EXT_direct_state_access
|
||||||
|
<li> GL_EXT_texture_swizzle
|
||||||
|
<li> GL_EXT_transform_feedback
|
||||||
|
<li> GL_EXT_vertex_array_bgra
|
||||||
|
<li> GL_NV_conditional_render
|
||||||
|
<li> GL_NV_explicit_multisample
|
||||||
|
<li> GL_NV_present_video
|
||||||
|
<li> GL_SGIS_point_line_texgen
|
||||||
|
<li> GL_SGIX_convolution_accuracy
|
||||||
|
<li> WGL_ARB_create_context
|
||||||
|
<li> WGL_ARB_framebuffer_sRGB
|
||||||
|
<li> WGL_NV_present_video
|
||||||
|
<li> WGL_NV_swap_group
|
||||||
|
<li> WGL_NV_video_output
|
||||||
|
<li> GLX_ARB_create_context
|
||||||
|
<li> GLX_ARB_framebuffer_sRGB
|
||||||
|
<li> GLX_NV_present_video
|
||||||
|
<li> GLX_NV_swap_group
|
||||||
|
<li> GLX_NV_video_output
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Licensing issues with documentation
|
||||||
|
<li> Problems with long long and _MSC_VER on MINGW
|
||||||
|
<li> Incorrect parameter for glGetUniformLocation
|
||||||
|
<li> glewGetExtension fails on last entry
|
||||||
|
<li> Incomplete GL_NV_texture_shader tokens
|
||||||
|
<li> Scripting problems on Cygwin
|
||||||
|
<li> Incorrect definition for GLint on OS X
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.5.0</b> [12-27-07]
|
||||||
|
<ul>
|
||||||
|
<li> New features:
|
||||||
|
<ul>
|
||||||
|
<li> Licensing change (BSD, Mesa 3-D, Khronos)
|
||||||
|
<li> Switch to using registry on <a href="http://www.opengl.org/registry/">www.opengl.org</a>
|
||||||
|
<li> Support for major and minor version strings
|
||||||
|
</ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_APPLE_flush_buffer_range
|
||||||
|
<li> GL_GREMEDY_frame_terminator
|
||||||
|
<li> GLX_EXT_texture_from_pixmap
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Incorrent 64-bit type definitions
|
||||||
|
<li> Do not strip static library on install
|
||||||
|
<li> Missing tokens in GL_ATI_fragment_shader and WGL_{ARB,EXT}_make_current_read
|
||||||
|
<li> Missing tokens in GL_VERSION_2_1
|
||||||
|
<li> Missing functions in GL_VERSION_1_4
|
||||||
|
<li> Incorrect parameter type for glXCopyContext
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.4.0</b> [04-27-07]
|
||||||
|
<ul>
|
||||||
|
<li> New features:
|
||||||
|
<ul>
|
||||||
|
<li> Extension variables are declared const to avoid possible
|
||||||
|
corruption of their values
|
||||||
|
</ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_NV_depth_range_unclamped
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Incorrect tokens in GL_NV_transform_feedback and GL_NV_framebuffer_multisample_coverage
|
||||||
|
<li> Incorrect function names in GL_EXT_gpu_program_parameters
|
||||||
|
<li> Missing tokens in GL_EXT_framebuffer_multisample
|
||||||
|
<li> GLEW_MX initialization problem for WGL_{ARB,EXT}_extensions_string
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.6</b> [03-04-07]
|
||||||
|
<ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_ATI_shader_texture_lod
|
||||||
|
<li> GL_EXT_gpu_program_parameters
|
||||||
|
<li> GL_NV_geometry_shader4
|
||||||
|
<li> WGL_NV_gpu_affinity
|
||||||
|
<li> GLX_SGIX_hyperpipe
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Missing include guards in glxew.h
|
||||||
|
<li> Makefile and install problems for Cygwin builds
|
||||||
|
<li> Install problem for Linux AMD64 builds
|
||||||
|
<li> Incorrent token in GL_ATI_texture_compression_3dc
|
||||||
|
<li> Missing tokens from GL_ATIX_point_sprites
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.5</b> [11-21-06]
|
||||||
|
<ul>
|
||||||
|
<li> New features:
|
||||||
|
<ul>
|
||||||
|
<li> Support for core OpenGL 2.1
|
||||||
|
<li> Debug support for glewIsSupported
|
||||||
|
</ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_EXT_bindable_uniform
|
||||||
|
<li> GL_EXT_draw_buffers2
|
||||||
|
<li> GL_EXT_draw_instanced
|
||||||
|
<li> GL_EXT_framebuffer_sRGB
|
||||||
|
<li> GL_EXT_geometry_shader4
|
||||||
|
<li> GL_EXT_gpu_shader4
|
||||||
|
<li> GL_EXT_packed_float
|
||||||
|
<li> GL_EXT_texture_array
|
||||||
|
<li> GL_EXT_texture_buffer_object
|
||||||
|
<li> GL_EXT_texture_compression_latc
|
||||||
|
<li> GL_EXT_texture_compression_rgtc
|
||||||
|
<li> GL_EXT_texture_integer
|
||||||
|
<li> GL_EXT_texture_shared_exponent
|
||||||
|
<li> GL_EXT_timer_query
|
||||||
|
<li> GL_NV_depth_buffer_float
|
||||||
|
<li> GL_NV_fragment_program4
|
||||||
|
<li> GL_NV_framebuffer_multisample_coverage
|
||||||
|
<li> GL_NV_geometry_program4
|
||||||
|
<li> GL_NV_gpu_program4
|
||||||
|
<li> GL_NV_parameter_buffer_object
|
||||||
|
<li> GL_NV_transform_feedback
|
||||||
|
<li> GL_NV_vertex_program4
|
||||||
|
<li> GL_OES_byte_coordinates
|
||||||
|
<li> GL_OES_compressed_paletted_texture
|
||||||
|
<li> GL_OES_read_format
|
||||||
|
<li> GL_OES_single_precision
|
||||||
|
<li> WGL_EXT_pixel_format_packed_float
|
||||||
|
<li> WGL_EXT_framebuffer_sRGB
|
||||||
|
<li> GLX_EXT_fbconfig_packed_float
|
||||||
|
<li> GLX_EXT_framebuffer_sRGB
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Wrong GLXContext definition on Solaris
|
||||||
|
<li> Makefile problem for parallel builds
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.4</b> [03-04-06]
|
||||||
|
<ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_EXT_framebuffer_blit
|
||||||
|
<li> GL_EXT_framebuffer_multisample
|
||||||
|
<li> GL_EXT_packed_depth_stencil
|
||||||
|
<li> GL_MESAX_texture_stack
|
||||||
|
<li> WGL_3DL_stereo_control
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> glBlendEquation missing from GL_ARB_imaging
|
||||||
|
<li> Wrong APIENTRY definition for Cygwin
|
||||||
|
<li> Incorrect OS X OpenGL types
|
||||||
|
<li> Unix 64-bit installation patch
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.3</b> [05-16-05]
|
||||||
|
<ul>
|
||||||
|
<li> New feature:
|
||||||
|
<ul>
|
||||||
|
<li> Code generation option to split source into multiple files
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> OpenGL 2.0 core initialization problems
|
||||||
|
<li> Wrong value for token GL_SHADER_TYPE
|
||||||
|
<li> Missing tokens in GL_ATI_fragment_shader
|
||||||
|
<li> Missing entry points in GL_ARB_transpose_matrix
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.2</b> [03-16-05]
|
||||||
|
<ul>
|
||||||
|
<li> New extension:
|
||||||
|
<ul>
|
||||||
|
<li> GL_APPLE_pixel_buffer
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Missing OpenGL 2.0 entry points
|
||||||
|
<li> Missing tokens in GL_SGIX_shadow
|
||||||
|
<li> MinGW makefile problem
|
||||||
|
<li> Check for incorrect OpenGL version string on SiS hardware
|
||||||
|
<li> Documentation update to meet the HTML 4.01 Transitional specification
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.1</b> [02-02-05]
|
||||||
|
<ul>
|
||||||
|
<li> New features:
|
||||||
|
<ul>
|
||||||
|
<li> Consistent Unix and Windows versioning
|
||||||
|
</ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> GL_EXT_framebuffer_object
|
||||||
|
<li> GL_ARB_pixel_buffer_object
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Missing OpenGL 2.0 tokens
|
||||||
|
<li> Incorrect typedefs (GLhandleARB and GLhalf)
|
||||||
|
<li> Borland compiler problems
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.3.0</b> [01-04-05]
|
||||||
|
<ul>
|
||||||
|
<li> New features:
|
||||||
|
<ul>
|
||||||
|
<li> Support for core OpenGL 2.0
|
||||||
|
<li> <tt>glewIsSupported</tt> provides efficient string-based extension checks
|
||||||
|
<li> Custom code generation from a list of extensions
|
||||||
|
<li> Makefile changes
|
||||||
|
</ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li> WGL_ATI_render_texture_rectangle
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> Incorrect function signature in OpenGL 1.5 core
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.2.5</b> [12-06-04]
|
||||||
|
<ul>
|
||||||
|
<li> New extensions:
|
||||||
|
<ul>
|
||||||
|
<li>GL_ATI_texture_compression_3dc
|
||||||
|
<li>GL_EXT_Cg_shader
|
||||||
|
<li>GL_EXT_draw_range_elements
|
||||||
|
<li>GL_KTX_buffer_region
|
||||||
|
</ul>
|
||||||
|
<li> Bug fixes:
|
||||||
|
<ul>
|
||||||
|
<li> OpenGL version detection bug
|
||||||
|
<li> Problems with wxWindows and MinGW compilation
|
||||||
|
<li> <tt>visualinfo</tt> compilation problem with GLEW_MX specified
|
||||||
|
<li> Wrong token name in OpenGL 1.5 core
|
||||||
|
</ul>
|
||||||
|
<li> Support for FreeBSD
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.2.4</b> [09-06-04]
|
||||||
|
<ul>
|
||||||
|
<li> Added ARB_draw_buffers and ARB_texture_rectangle
|
||||||
|
<li> Fixed bug in ARB_shader_objects
|
||||||
|
<li> Replaced <tt>wglinfo</tt> with <tt>visualinfo</tt>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.2.3</b> [06-10-04]
|
||||||
|
<ul>
|
||||||
|
<li> Added GL_NV_fragment_program2, GL_NV_fragment_program_option, GL_NV_vertex_program2_option, GL_NV_vertex_program3
|
||||||
|
<li> Bug fix in GL_ARB_vertex_blend
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.2.2</b> [05-08-04]
|
||||||
|
<ul>
|
||||||
|
<li> Added GL_EXT_pixel_buffer_object, removed GL_NV_element_array
|
||||||
|
<li> Fixed GLEW_MX problems
|
||||||
|
<li> Bug fix in GL_EXT_texture_rectangle and <tt>wglinfo</tt>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.2.1</b> [03-18-04]
|
||||||
|
<ul>
|
||||||
|
<li> Bug fix in OpenGL version query (early release of 1.2.0 contained this bug)
|
||||||
|
<li> Bug fix in GL_ARB_shader_objects and temporary bug fix in GL_ARB_vertex_shader
|
||||||
|
<li> Added flags on GDI support and multisampling to <tt>wglinfo</tt>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.2.0</b> [02-19-04]
|
||||||
|
<ul>
|
||||||
|
<li> Added full OpenGL 1.5 support
|
||||||
|
<li> Added support for multiple rendering contexts with different capabilities
|
||||||
|
<li> Added command line flags to <tt>glewinfo</tt> for selecting displays and visuals
|
||||||
|
<li> Added GLX_SGIS_multisample, GLX_SUN_video_resize, and GL_SUN_read_video_pixels
|
||||||
|
<li> Added MinGW/MSYS support
|
||||||
|
<li> Bug fixes in GL_ARB_shader_objects and the OS X build
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.1.4</b> [12-15-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added GL_APPLE_float_pixels, GL_APPLE_texture_range,
|
||||||
|
GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
|
||||||
|
GLX_ATI_pixel_format_float, and GLX_ATI_render_texture
|
||||||
|
<li> Bug fixes in GL_ATI_map_object_buffer and GL_ATI_fragment_shader
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.1.3</b> [10-28-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added Solaris and Darwin support
|
||||||
|
<li> Added GL_ARB_fragment_shader, GL_ARB_shader_objects, and GL_ARB_vertex_shader
|
||||||
|
<li> Fixed bug in GL_WIN_swap_hint
|
||||||
|
<li> Removed <tt>glewinfo</tt>'s dependency on <tt>GLUT</tt>
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.1.2</b> [09-15-03]
|
||||||
|
<ul>
|
||||||
|
<li> Removed dependency on WGL_{ARB,EXT}_extensions_string to make GLEW run on Matrox cards
|
||||||
|
<li> Added glewGetString for querying the GLEW version string
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.1.1</b> [08-11-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added GLX_NV_float_buffer, GL_ARB_shading_language_100, and GL_ARB_texture_non_power_of_two
|
||||||
|
<li> Fixed bug in GL_ARB_vertex_buffer_object
|
||||||
|
<li> Minor updates in documentation
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.1.0</b> [07-08-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added automatic code generation
|
||||||
|
<li> Added almost every extension in the registry
|
||||||
|
<li> Added separate namespace
|
||||||
|
<li> Added Irix support
|
||||||
|
<li> Updated documentation
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.7</b> [06-29-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added GL_EXT_depth_bounds_test
|
||||||
|
<li> Fixed typos
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.6</b> [05-05-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added ARB_vertex_buffer_object and NV_half_float
|
||||||
|
<li> Updated <tt>wglinfo</tt>
|
||||||
|
<li> Temporary Linux bug fixes (problems with SDL and MESA)
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.5</b> [02-17-03]
|
||||||
|
<ul>
|
||||||
|
<li> Bug fixes
|
||||||
|
<li> Added <tt>wglinfo</tt>
|
||||||
|
<li> Updated documentation
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.4</b> [02-02-03]
|
||||||
|
<ul>
|
||||||
|
<li> Added NV_texture_expand_normal
|
||||||
|
<li> Added mingw support
|
||||||
|
<li> Updated documentation
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.3</b> [01-09-03]
|
||||||
|
<ul>
|
||||||
|
<li> Cleaned up ATI extensions
|
||||||
|
<li> Changed function prototypes to match glext.h
|
||||||
|
<li> Added EXT_texture3D
|
||||||
|
<li> Fixed typos in ATI_vertex_attrib_array_object and ATI_draw_buffers
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.2</b> [12-21-02]
|
||||||
|
<ul>
|
||||||
|
<li> Added list of supported extensions to documentation
|
||||||
|
<li> Added NV_half_float and NV_texgen_emboss
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.1</b> [12-17-02]
|
||||||
|
<ul>
|
||||||
|
<li> Bug fixes
|
||||||
|
<li> Added glewGetExtension
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
<ul class="none">
|
||||||
|
<li><b>1.0.0</b> [12-12-02]
|
||||||
|
<ul>
|
||||||
|
<li> Initial release
|
||||||
|
</ul>
|
||||||
|
</ul>
|
||||||
|
<hr align="center">
|
||||||
|
|
4
auto/src/footer.html
Normal file
4
auto/src/footer.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<!-- begin footer.html -->
|
||||||
|
</td></tr></table></body>
|
||||||
|
<!-- end footer.html -->
|
||||||
|
|
97
auto/src/header.html
Normal file
97
auto/src/header.html
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
<!-- begin header.html -->
|
||||||
|
<!--
|
||||||
|
The OpenGL Extension Wrangler Library
|
||||||
|
Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
|
||||||
|
Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
|
||||||
|
Copyright (C) 2002, Lev Povalahev
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
* The name of the author may be used to endorse or promote products
|
||||||
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
|
THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
-->
|
||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html/4/loose.dtd">
|
||||||
|
<!-- <img src="new.png" height="12" alt="NEW!"> -->
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>GLEW: The OpenGL Extension Wrangler Library</title>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||||
|
<link href="glew.css" type="text/css" rel="stylesheet">
|
||||||
|
</head>
|
||||||
|
<body bgcolor="#fff0d0">
|
||||||
|
<table border="0" width="100%" cellpadding="12" cellspacing="8" style="height:100%">
|
||||||
|
<tr>
|
||||||
|
<td bgcolor="#ffffff" align="left" valign="top" width="200">
|
||||||
|
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
|
||||||
|
<tr>
|
||||||
|
<td valign="top">
|
||||||
|
|
||||||
|
<table border="0" width="100%" cellpadding="0" cellspacing="0" align="left">
|
||||||
|
<tr><td align="center"><i>Latest Release: <a href="https://sourceforge.net/project/showfiles.php?group_id=67586&package_id=67942&release_id=637800">1.5.1</a></i></td></tr>
|
||||||
|
<tr><td align="center"><br></td></tr>
|
||||||
|
<tr><td align="center"><img src="./glew.png" alt="GLEW Logo" width="97" height="75"></td></tr>
|
||||||
|
<tr><td align="center"><br></td></tr>
|
||||||
|
<tr><td align="center">
|
||||||
|
<table border="0" cellpadding="0" cellspacing="0" align="center">
|
||||||
|
<tr><td align="center"><b>Download</b></td></tr>
|
||||||
|
<tr><td align="center"><a href="install.html">Installation</a></td></tr>
|
||||||
|
<tr><td align="center"><a href="basic.html">Basic Usage</a></td></tr>
|
||||||
|
<tr><td align="center"><a href="advanced.html">Advanced Usage</a></td></tr>
|
||||||
|
|
||||||
|
<tr><td align="center"><a href="credits.html">Credits & Copyright</a></td></tr>
|
||||||
|
<tr><td align="center"><a href="log.html">Change Log</a></td></tr>
|
||||||
|
<tr><td align="center"><a href="http://sourceforge.net/projects/glew/">Project Page</a></td></tr>
|
||||||
|
<tr><td align="center"><a href="https://sourceforge.net/mail/?group_id=67586">Mailing Lists</a></td></tr>
|
||||||
|
<tr><td align="center"><a href="http://sourceforge.net/tracker/?group_id=67586">Bug Tracker</a></td></tr>
|
||||||
|
</table>
|
||||||
|
<tr><td align="center"><br></tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
|
||||||
|
<td valign="bottom">
|
||||||
|
<table border="0" width="100%" cellpadding="5" cellspacing="0" align="left">
|
||||||
|
<tr><td align="center"><i>Last Update: 11-03-08</i></td></tr>
|
||||||
|
<tr><td align="center">
|
||||||
|
<a href="http://www.opengl.org"> <img src="./ogl_sm.jpg" width="68"
|
||||||
|
height="35" border="0" alt="OpenGL Logo"></a>
|
||||||
|
<a href="http://sourceforge.net"> <img
|
||||||
|
src="http://sourceforge.net/sflogo.php?group_id=67586&type=1"
|
||||||
|
width="88" height="31" border="0" alt="SourceForge Logo"></a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr><td align="center"><a
|
||||||
|
href="http://sourceforge.net/donate/index.php?group_id=67586"><img
|
||||||
|
src="http://images.sourceforge.net/images/project-support.jpg"
|
||||||
|
width="88" height="32" border="0" alt="Support This Project"></a></td></tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
|
||||||
|
<td bgcolor="#ffffff" align="left" valign="top">
|
||||||
|
<!-- end header.html -->
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user