CS 447/647: Image Synthesis
Assignment 0: Hello, World
Due: January 23
This assignment will get you acquainted with lrt.
lrt has been developed and tested on Linux. If you're using something else, you're on your own. You will need libtiff installed.
Once you have successfully compiled lrt, you can try rendering some images.
You will see some messages from lrt, and it will begin printing a sequence of 'p's followed by a sequence of '+'s to the screen to let you know it is working. After a minute or so (it will print about 50 '+'s), the rendering will finish. You will have a new image, hello.tiff, in your directory. View this with your favorite image viewer. Congratulations! You've rendered your first image with lrt.
Open hello.rib in a text editor. The first few lines are comments, followed by commands that specify the desired image resolution and format. Try reducing the resolution to half the current size, and reducing the pixel samples from 2x2 to 1x1, and render the scene again. It will be smaller and have some jaggies, but it will render much quicker. This will be useful later in the course; you'll want to do lots of quick and dirty renders for debugging.
Next in the hello.rib file are commands to set up the camera and specify a view transformation matrix. Finally, after the WorldBegin line, you will find the description of the scene. You should be able to figure out the meaning of the lines that describe the two light sources. The polygon meshes that fill the rest of the file are not terribly human-reader-oriented, but you can probably spot the lines that specify surface shaders and colors for materials. Experiment with changing the colors of materials and lights, and with changing the position of the light sources.
You will find several other scene files here. Feel free to experiment; don't forget to always use the decls.rib file when you render. You can find detailed information about the RIB file format through the links on the main class page.
You can find the lrt book here. You should read through the first three chapters of the lrt book.
As a quick check on what you've read, answer the following questions about lrt. One line (and sometimes one word) answers for each will suffice.
Write up the answers to the questions in part 3 as a web page, and mail the URL to the TA.
When submitting assignments, NEVER mail the TA anything other than a URL.
Each assignment will require you to create a small web page. Typically this page will contain answers to any written questions, links to source code, and images.
This homework does not count directly to your course grade except in the sense that you will not pass the course if you don't complete it. We're not kidding about this -- you need to get familiar with lrt in order to be successful in the later assignments.