gltut

committed 386003e

Tut13: Copyediting.

Documents/Illumination/Tutorial 13.xml

`             <para>Let's look at the 2D case. To have a 2D vector direction, we need an X and Y`
`                 coordinate. If we only have the X, but we know that the vector has a certain length,`
`                 then we can compute the Y based on the Pythagorean theorem:</para>`
`-            <!--TODO: Picture of the 2D case of finding Y based on X and a diagonal.`
`+            <!--TODO: Diagram of the 2D case of finding Y based on X and a diagonal.`
` TODO: Equation of Pythagorean theorem, then reformulated to solve for Y.-->`
`             <para>We simply use the 3D version of this. We have X and Y from`
`                     <varname>mapping</varname>, and we know the length is 1.0. So we compute the Z`
`             mapping between the surface and the sphere is static; it doesn't change based on the`
`             viewing angle.</para>`
`         <para>Consider this 2D case:</para>`
`-        <!--TODO: Picture of 2D case of perspective projection and sphere impostor off to the left.-->`
`+        <!--TODO: Diagram of 2D case of perspective projection and sphere impostor off to the left.-->`
`         <para>When viewing the sphere off to the side like this, we shouldn't be able to see the`
`             left-edge of the sphere facing perpendicular to the camera. And we should see some of`
`             the sphere on the right that is behind the plane.</para>`
`             <listitem>`
`                 <para>Impostors are objects who's geometric representation has little or no`
`                     resemblance to what the viewer sees. These typically generate an object`
`-                    procedurally by cutting fragments out to form a shape, and then use normals and`
`-                    depth manipulation to do lighting computations on the cut-out.</para>`
`+                    procedurally by cutting fragments out to form a shape, and then use normals to`
`+                    do lighting computations on the cut-out.</para>`
`             </listitem>`
`             <listitem>`
`                 <para>Fragments can be discarded from within a fragment shader. This prevents the`
`                     outputs from the shader from being written to the final image.</para>`
`             </listitem>`
`             <listitem>`
`+                <para>Ray tracing can be employed by a fragment shader to determine the position and`
`+                    normal for a point. Those values can be fed into the lighting equation to`
`+                    produce a color value.</para>`
`+            </listitem>`
`+            <listitem>`
`                 <para>Fragment shaders can change the depth value that is used for the depth test`
`                     and is written to the framebuffer.</para>`
`             </listitem>`
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.