Charles McGarvey
mcgarvey@eng.utah.edu
-Project 2 Notes
+Project 3 Notes
To build, just `make' it. You will need GNU make; it won't work well with any
-other kind of make(1). Once built, the executable is called rasterize. The
-default options should meet the assignment specification.
+other kind of make(1). Once built, the executable is called rasterize.
+
+Caveats:
+
+1. I happened to do Phong interpolation a little differently (i.e. not as
+good) compared to what is described in the project handout. Instead of
+calculating the lighting vectors in eye-coordinates, I did it all in world
+coordinates. So I had to save the camera position (already in world
+coordinates) from the scene file and transform each point vector of the
+geometry by just the view matrix. Anyway, the results look a little bit
+different than the provide images, so maybe I didn't do it quite right.
+
+2. Contrary to the specification, the geometry color is not overridden by a
+texture map in this implementation. Rather, the geometry color is
+multiplied by the texture color, so blending can work with texture mapping.
+
+3. The PPM importer doesn't handle comments, and the BMP importer is also
+quite picky about the depth and color space, though importing will fail
+without any useful explanation.
Known to run on:
- * Linux 3.2.1-gentoo
- * NetBSD 5.1.2
+ * Linux 3.2.1-gentoo (x86_64)
+ * NetBSD 5.1.2 (amd64)
* Darwin 10.8.0 (in the Mac lab)
+ * Win32 (tried with i686-mingw32-gcc)