I created these are images in a computer graphics class, offered through NTU. The images were generated mathematically by a program I created during the class called a ray tracer. With each successive project more features were added. I hope you can see improvement!
Click on the images to see them full size (640x480). The images are 256 color bitmaps, and are best viewed with high or true color. If you are only using a 256 color graphics mode, your window manager will steal colors for its own selfish reasons and the images will look spotted!
I used ThumbsPlus to generate these thumbnails.
![]() jack.gif 15 Spheres The jack is not in the middle of the table. Because the table top is curved, if I put the jack in the middle, it appears to be on the back edge. Of course when I add shadows, I won't be able to get away with this trick! |
fight1.gif 40 Spheres I drew this manually. Starting from a paper drawing, I guessed on the initial sizes and placement, and then spent hours making adjustments. |
fight.gif 40 Spheres Compare this to the previous fight image. Shadows and specular reflections make the difference! These three images show the same scene, just from different camera locations. |
fightm.gif 40 Spheres I added a 3D marble texture. My code for this and the wood textures is small, but required hours of tweaking. They still need improvement. |
|||
![]() chessw.gif 213 Objects I love this wood texture because I spent a long time on it. People who did not spend time on it don't seem to like it as much. 8( |
![]() paint.gif 50 Objects This is 2D texture mapping. One of the wall pictures is this picture, so I ran my raytracer several times to get it to recede. |
![]() chessrs.gif 171 Objects The chessboard is flat! I placed the 'camera' in the middle of the board, pointing up, into a reflective sphere above the board. (i.e. You are looking at the sphere.) The board is also reflective. |
![]() chesswc.gif 213 Objects My color map selector needs help! This image looks better in true color (below). |
glass.gif Check out the refraction. The straws and glasses are identical. The only difference is the left glass is filled with water, making the straw appear to touch the outside surface of the glass. You do not see the checkerboard through the filled glass because of the refraction. I should have put something behind the glass to make this clear. |
![]() chesswc.jpg 213 Objects (800x600) This looks a little better. The thin wood grain lines are less than a pixel wide, and would be disjoint without the sub pixel resolution achieved with antialiasing. (actually, I just wanted to use "sub pixel" in a sentence.) Check out the knights on the right, for a comparison. |
![]() anti.jpg anti.bmp anti.tif (200x150) On the left is a non-antialiased knight, on the right is an antialiased knight. "antialiasing" means that each pixel is sampled multiple times (in this example, 16) at evenly spaced points within the 2 dimensional pixel. The average of these samples is used. TV's generally have fewer pixels than computer monitors, but images still look good because they are antialised. (The anti.jpg is smaller than anti.bmp, but it is a lossy compression. So, if you're actually reading this text get the bmp file.) |