1. Jason McKesson
  2. gltut


gltut / Documents / Tutorials.xml

<?xml version="1.0" encoding="UTF-8"?>
<?oxygen RNGSchema="http://docbook.org/xml/5.0/rng/docbookxi.rng" type="xml"?>
<?oxygen SCHSchema="http://docbook.org/xml/5.0/rng/docbookxi.rng"?>
<book xmlns="http://docbook.org/ns/docbook" xmlns:xi="http://www.w3.org/2001/XInclude" version="5.0">
        <title>Learning Modern 3D Graphics Programming</title>
            <holder>Jason L. McKesson</holder>
    <xi:include href="preface.xml"/>
    <xi:include href="Building the Tutorials.xml"/>
        <?dbhtml filename="Basics.html" dir="Basics"?>
            <title>The Basics</title>
            <para>These tutorials involve the most basic operations for OpenGL. They deal with the
                core of the OpenGL pipeline. These provide core information about how OpenGL works,
                how its pipeline works, what the basic flow of information is within OpenGL.</para>
        <xi:include href="Basics/tutorial 00.xml"/>
        <xi:include href="Basics/tutorial 01.xml"/>
        <xi:include href="Basics/tutorial 02.xml"/>
        <?dbhtml filename="Positioning.html" dir="Positioning" ?>
            <para>These tutorials give the reader information about how objects are positioned in 3D
                graphics and OpenGL. These deal with transforming the position of objects, as well
                as doing what is necessary to make those objects appear as though they are in a
                3-dimensional space.</para>
        <xi:include href="Positioning/tutorial 03.xml"/>
        <xi:include href="Positioning/tutorial 04.xml"/>
        <xi:include href="Positioning/tutorial 05.xml"/>
        <xi:include href="Positioning/tutorial 06.xml"/>
        <xi:include href="Positioning/tutorial 07.xml"/>
        <xi:include href="Positioning/tutorial 08.xml"/>
        <?dbhtml filename="Illumination.html" dir="Illumination" ?>
            <para>One of the most important aspects of rendering is lighting. Thus far, all of our
                objects have had a color that is entirely part of the mesh data, pulled from a
                uniform variable, or computed in an arbitrary way. This makes all of our objects
                look very flat and unrealistic.</para>
            <para>Properly modeling the interaction between light and a surface is vital in creating
                a convincing world. Lighting defines how we see and understand shapes to a large
                degree. This is the reason why the objects we have used thus far look fairly flat. A
                curved surface appears curved to us because of how the light plays over the surface.
                The same goes for a flat surface. Without this visual hinting, surfaces appear flat
                even when they are modeled with many triangles and yield a seemingly-curved
                polygonal mesh.</para>
            <para>A proper lighting model makes objects appear real. A poor or inconsistent lighting
                model shows the virtual world to be the forgery that it is. The tutorials in this
                section will introduce some light/surface models and explain how to implement
        <xi:include href="Illumination/tutorial 09.xml"/>
        <xi:include href="Illumination/tutorial 10.xml"/>
        <xi:include href="Illumination/tutorial 11.xml"/>
        <xi:include href="Illumination/tutorial 12.xml"/>
        <xi:include href="Illumination/tutorial 13.xml"/>
    <xi:include href="Texturing.xml"/>
        <?dbhtml filename="Framebuffer.html" dir="Framebuffer" ?>
            <para>Render targets and framebuffer blending are key components to many advanced
                effects. These tutorials will cover many per-framebuffer operations, from blending
                to render targets.</para>
        <?dbhtml filename="Advanced Lighting.html" dir="Adv Lighting" ?>
        <title>Advanced Lighting</title>
            <para>Simple diffuse lighting and directional shadows are useful, but better, more
                effective lighting models and patterns exist. These tutorials will explore those,
                from Phong lighting to reflections to HDR and blooming.</para>
    <!--<xi:include href="Optimization.xml"/>-->
    <xi:include href="History of Graphics Hardware.xml"/>