General Configurations:
   # Development Platform: Windows 7 x64, Visual Studio IDE, Debug+Release build
   # Used OpenFrameworks library
   # CPU: Intel Core2Duo 2.24 GHz
   # Graphics Hardware: ATI Mobility Radeon HD 3470 (OpenGL 2.1)
Description:
I tried to balance between 2 terms: a Diffuse term and a Specular term. The Diffuse term includes the light returned (Lret) from inside translucent Frank from the light that entered through a fragment.
I also calculated the light that goes through (Lt assuming all went in) and comes out of the other side (Lout), so for faces that are not seeing the light, they only consider this Lout. I used the cosign term between the
fragments normal and lights direction in calculating the available light on a fragment. And for the Specular term I used the Half vector method of Blinn-Phong and Sloan and Hoffman's normalization term to calculated reflected light off
the surface.
(I will include the final details after some more refinements with the final submission.)

| Seams rendered as lines and points in an FBO | Using OpenGL line and point aliasing |
|---|---|
|
|
Description of the Seam Correction algorithms:
First while reading the triangles from the obj file a list was populated that contains for each Vertex a list of Vertices that
have the same coordinates but different texture coordinates. (There were hardly more than 2 in each list). Then this information was used
to find seam edges. So when comparing each Triangle with another I first check if they have at least 2 duplicate vertices, that have different
texture coordinates. This simple check increases the speed of finding and comparing edged several order of magnitude faster of this O(N*N) algorithm where
N = number of triangles (for each pair of triangles the number of comparisons is constant (9x2 edge compares).
The seam edges were then rendered as: for each edge => render 1 line with width d and render 2 points in each vertices with size d. Then while rendering them in the Fbo
they were anti-aliased using OpenGL's GL_LINE_SMOOTH and GL_POINT_SMOOTH states, which gives a better results. Then following the rendering of the seams, Franks's vertices were rendered
over the same Fbo, which replaced some inside fragments of the seams but now have a wider lookup area near there seams.