Commits

Jason McKesson committed c475a15

GLSDK-based tutorial building instructions.

Comments (0)

Files changed (4)

Documents/Building the Tutorials.xml

     <para>You will need minimal familiarity with using the command line in order to build these
         tutorials. Also, any mention of directories is always relative to where you unzipped this
         distribution.</para>
-    <simplesect>
+    <section>
         <title>File Structure</title>
         <para>The layout of the files in the tutorial directory is quite simple. The
                 <filename>framework</filename> directory and all directories of the form
             DocBook 5.0 format.</para>
         <para>Every other directory contains the code and build files for a library that the
             tutorials require.</para>
-    </simplesect>
-    <simplesect>
+    </section>
+    <section>
         <title>Necessary Utilities</title>
         <para>In order to build everything, you will need to download the <link
                 xlink:href="http://industriousone.com/premake">Premake 4</link> utility for your
             Premake once for each tutorial.</para>
         <para>The Premake download comes as a pre-built executable for all platforms of interest,
             including Linux.</para>
-    </simplesect>
-    <simplesect>
-        <title>FreeGLUT</title>
-        <para><link xlink:href="http://freeglut.sourceforge.net/">FreeGLUT</link> is a
-            cross-platform library that handles a lot of the boilerplate initialization code
-            necessary for running a windowing application. It creates a window, attaches an OpenGL
-            context to the window, and handles window messages. This makes it much easier to focus
-            on OpenGL and less on how to initialize OpenGL properly.</para>
-        <para>To build FreeGLUT for Win32 with Visual Studio, go to the
-                <filename>freeglut-2.6.0/VisualStudio2008Static</filename> directory and open the
-            solution file there. There will be several projects in the solution, but the only one of
-            interest is the <quote>FreeGLUT</quote> project. Build this, for both debug and
-            release.</para>
-        <para>To build FreeGLUT for Linux, or to build it on Windows without using Visual Studio,
-            open a console window and go to the <filename>freeglut-2.6.0</filename> directory. Enter
-            the following commands:</para>
-        <programlisting>./configure
-make</programlisting>
-        <para>Do <emphasis>not</emphasis> execute <userinput>make install</userinput>. This source
-            distribution is intended to be self-contained. If you try to install FreeGLUT, it will
-            make non-local changes to your system. The rest of the build process assumes that the
-            results of the build are in the local directories after the make process.</para>
-    </simplesect>
-    <simplesect>
+    </section>
+    <section>
+        <title>Unofficial OpenGL SDK</title>
+        <para>The <link xlink:href="http://glsdk.sourceforge.net/docs/html/index.html">Unofficial
+                OpenGL SDK</link> is a library aggregation, consisting of a number of tools for
+            developing OpenGL applications, all bound together with a unified build system. A
+            modified SDK distribution is bundled with these tutorials; this distro does not contain
+            the documentation or GLFW that comes with the regular SDK.</para>
+        <para>The SDK his library uses Premake to generate its build files. So, with
+                <command>premake4.exe</command> in your path, go to the <filename>glsdk</filename>
+            directory. Type <userinput>premake4 <replaceable>plat</replaceable></userinput>, where
+                <replaceable>plat</replaceable> is the name of the platform of choice. For Visual
+            Studio 2008, this would be <quote>vs2008</quote>; for VS2010, this would be
+                <quote>vs2010.</quote> This will generate Visual Studio projects and solution files
+            for that particular version.</para>
+        <para>For GNU and makefile-based builds, this is <quote>gmake</quote>. This will generate a
+            makefile. To build for debug, use <userinput>make config=debug</userinput>; similarly,
+            to build for release, use <userinput>make config=release</userinput>.</para>
+        <para>Using the generated build files, compile for both debug and release. You should build
+            the entire solution; the tutorials use all of the libraries in the SDK.</para>
+        <para>Note that there is no execution of <userinput>make install</userinput> or similar
+            constructs. The SDK is designed to be used where it is; it does not install itself to
+            any system directories on your machine. Incidentally, neither do these tutorials.</para>
+    </section>
+    <section>
         <title>TinyXML</title>
         <para><link xlink:href="http://sourceforge.net/projects/tinyxml/">TinyXML</link> is an XML
             parser. The framework uses an XML file format for loading complex 3D mesh data. This
             library simply makes the loading and parsing of this format easier.</para>
-        <para>Unlike the previous libraries, this library uses Premake to generate its build files.
-            So, with <command>premake4.exe</command> in your path, go to the
-                <filename>tinyxml</filename> directory. Type <userinput>premake4
-                    <replaceable>plat</replaceable></userinput>, where
-                <replaceable>plat</replaceable> is the name of the platform of choice. For Visual
-            Studio 2008, this would be <quote>vs2008</quote>; for VS2010, this would be
-                <quote>vs2010.</quote> This will generate Visual Studio project and solution files
-            for that particular version.</para>
-        <para>For GNU and makefile-based builds, this is <quote>gmake</quote>. This will generate a
-            makefile. To build for debug, use <userinput>make config=debug</userinput>; similarly,
-            to build for release, use <userinput>make config=release</userinput>.</para>
-        <para>Using the generated build files, compile for both debug and release.</para>
-    </simplesect>
-    <simplesect>
-        <title>GLLoad and GLImg</title>
-        <para>The GLImg library is a library for loading image data from various file formats. The
-            GLLoad library is a library for loading OpenGL function entrypoints from the .dll. For
-            reasons that are too technical to repeat here, using OpenGL on most platforms requires
-            manually loading function pointers from a .dll. This library makes this process
-            painless.</para>
-        <para>Like TinyXML, these two libraries use Premake to generate their build files. However,
-            they are both generated from the same premake file. To generate the build for these two
-            libraries, go to the <filename>glimg</filename> directory. Type <userinput>premake4
-                    <replaceable>plat</replaceable></userinput> as you did for TinyXML. This will
-            create the build file you need to use to build the libraries for both debug and
-            release.</para>
-    </simplesect>
-    <simplesect>
+        <para>Like the SDK, it uses Premake to generate its build files. So perform the steps as
+            above to build it.</para>
+    </section>
+    <section>
         <title>Tutorial Building</title>
         <para>Each tutorial directory has a <filename>premake4.lua</filename> file; this file is
             used by Premake to generate the build files for that tutorial. Therefore, to build any
             in the <filename>framework</filename> directory is shared by every tutorial. It does the
             basic boilerplate work: creating a FreeGLUT window, etc. This allows the tutorial source
             files to focus on the useful OpenGL-specific code.</para>
-    </simplesect>
+    </section>
 </article>

Documents/Getting Started.xml

                 OpenGL has many functions. So the common way to handle this is to use a library to
                 do it for you.</para>
             <formalpara>
+                <title>GL Load</title>
+                <para>This comes with the Unofficial OpenGL SDK. And while most of the SDK is not
+                    intended for high-performance use, GL Load is still perfectly serviceable in
+                    that capacity. After all, this is generally a one-time initialization step, so
+                    performance is ultimately irrelevant.</para>
+            </formalpara>
+            <para>GL Load works with core and compatibility contexts equally well. GL Load uses the
+                MIT License.</para>
+            <formalpara>
                 <title>GLEW</title>
                 <para>GLEW (the OpenGL Extension Wrangler) is perhaps the most widely used
                     alternative. While it is technically intended for loading extension functions,
 
 This distributions contain source code from several sources. Each of these sources has its own copyright and licenses.
 
-The FreeGLUT library is distributed under the terms of the X-Consortium License, as specified in the "freeglut-2.6.0/COPYING" file.
+The various components of the Unofficial OpenGL SDK, found under the "glsdk" directory, are mostly distributed under the MIT License. Details can be found in the "glsdk/License.txt" file.
 
 The TinyXML library is distributed under the terms of the ZLib License, as specified in the "tinyxml/readme.txt" file.
 
-The FreeImage library is distributed under the terms of the FreeImage Public License, as specified in the "FreeImage/license-fi.txt" file.
-
-The GLM library is distributed under the terms of the MIT License, as specified in the "glm-0.9.0.7/copying.txt" file.
-
-With a few exceptions exceptions, all other materials in this distribution are copywritten and distributed under the terms of the MIT License, as specified in the "./MIT License.txt" file. The two files that are not distributed under this copyright are:
+With a few exceptions exceptions, all other materials in this distribution are copywritten and distributed under the terms of the MIT License, as specified in the "./MIT License.txt" file. The following files are not distributed under this copyright:
 
 * Documents/Positioning/Coord_system_SZ_0.svg
 * Documents/Illumination/GammaCorrectFunc.svg

get_externals.lua

 			"glm/doc",
 			"glm/test",
 			"glm/util",
+			"README.html",
 		}
 	},
 }
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.