This week,
we worked on shaders, texturing, and transparency. We used texture mapping and
filtering, applied images as textures to objects, understood methods and limitations
of alpha blending, and applied alpha blending in WebGL.
Texturing is
a process that takes a surface and modifies it at each location using an image,
function or other data source. It makes 3D scenes look real.
In rendering,
many buffers are used. A buffer is a part of memory that stores data per pixel
like color and depth buffers.
The depth
test using the Z-buffer compares the current fragment depth against the
corresponding value in the depth buffer, if its less; it will be kept. Other
tests are alpha, stencil, and scissor. The alpha test is used to remove colors
where the opacity is not above a value. The stencil test is used to compare a fragment
to another value in the buffer. The scissor test determines if a pixel is in a
user defined rectangle, only keeping if it is inside.
Alpha blending
uses an equation to determine if the new color overwrites the current buffer
color and how much it contributes.