Virtual Worlds Personal Project

Important Dates

Abstract due: Tuesday, February 15
Full Proposal due: Friday, February 25
Project Meetings: Friday, March 10, March 31, April 14, April 28
Paper presentation choice due: Friday, March 17
Progress reports due: Friday, March 3, March 10, March 17, March 31, April 7, April 14, April 21, April 28
Final Project Presentation: TBA
Project Deliverables due: TBA

Overview

Each of you will plan and carry out a virtual worlds project of your own design. This project has several goals, including: exposing you to some recent developments in computer graphics, giving you the opportunity to dig more deeply into some area of computer graphics that interests you, teaching you to do some brief research into this area, and allowing you some creative freedom to choose a major programming assignment.

You will have a number of things to turn in to me related to your project, including:

In addition, you will be presenting a research paper to the class, which should relate to the subject matter of your project.

Choosing a Project

Your project does not have to be a true research project (although if you want to work on something new and publishable, let me know and we can discuss that). It should be something that you will find interesting and fun. It must be an interactive 3D graphics application, and it should provide some kind of compelling visual experience, a sense of presence, or something that facilitates that. It may provide great visuals, interesting dynamics, useful or pleasing interactions, etc. Use your creativity and do not feel constrainted by the rules of the physical world - you may even create worlds that do not behave the same as the physical world, but are interesting in their own right.

For instance, these are some of the possible topic areas:

Applications Modeling Geometric Algorithms Interaction Techniques
Tracking Techniques
Rendering Techniques
Here are a few projects created by students in previous years: You may use existing software tools and resources. However, this is a programming class, so your project should have a major programming component. So, for example, building a 3D model in an existing modeling package and rendering an image of the model is not a suitable project.

In seeking a topic, you will briefly research your topic area to see what sorts of interesting things people are doing in that area (in, say, the last 5-10 years). One type of project is to implement an algorithm described in a recent research paper. You do not have to implement someone else's work, but it's a good place to start if you do not have a spectacular idea of your own brewing.

You will be demonstrating (i.e. showing off) your project to me and the rest of the class, so you should be thinking from the beginning of what sort of demonstration you would like to end up with. This can help drive your project development.

You should seek to impress me by demonstrating not just a working program, but one that has developed to a point of richness. You have 8 weeks to develop a program with enough infrastructure to support some interesting features. At your demo, show me all the interesting things it can do.

Research Resources

There are a number of resources available to you at the MSE library. One of the most important resources is the published proceedings of the annual SIGGRAPH conference. All of the recent years are available. However, some of them are bound together with the journal, Computer Graphics, so you may have to look carefully. You can really get a good feeling for the sorts of graphics research going on by just looking at the table of contents, skimming through the abstracts, looking at the pictures, etc. This may help you get find a topic to get excited about.

In addition to the SIGGRAPH proceedings, there are a number of other useful conferences and journals, including: IEEE VR, IEEE Computer Graphics and Applications, Computers and Graphics, The Visual Computer, Computer Graphics Forum, ACM Symposium on Interactive 3D Graphics, ACM Transactions on Graphics, and many more.

Many of the more recent SIGGRAPH articles may also be found on-line. You might want to look at http://www2.iro.umontreal.ca/~ratib/code/cg-pub.htm (many of the individual journals also have their own web sites). When looking for ideas or inspiration, I don't find this as compelling as actually getting into the library and paging through the real, physical articles, but it is a useful way to get yourself a nice electronic or printed copy of a recent article.

There is also a graphics bibliography server available on-line at: http://www.cgrg.ohio-state.edu/~spencer/gbib.html.

Proposal Abstract

Your proposal abstract should be one or two paragraphs including a brief description, discussion of the novel aspects, the potential pitfalls, and a summary of the required resources. We have access at least to the HMD and tracker in the graphics lab, as well as several SGI workstations. If you have some exciting idea that requires additional resources, we may be able to get access to Phantom force feedback device, video cameras, etc., but this will require some coordination with the other basement laboratories.

Full Project Proposal

Your full proposal (as opposed to the abstract you already submitted) should be no more than two typed pages. It should include exactly the following sections, with exactly the following headings:
  1. Abstract. One or two paragraphs summarizing your project.
  2. Most Compelling Aspect(s). Describe what you think will be the most interesting or compelling aspect(s) of your proposed project. Does it involve potentially new research, or are you planning a really good implementation of something that has been demonstrated before? Why or what will people say "wow!" to?
  3. Development Plan. This should be a dated list of tasks to be completed to realize the final project. You should include tasks at a granularity such as "week 1: learn to use such and such tool", and "week 2: model the ocean floor", i.e. you will probably have a list of fewer than 10 tasks. This list will help you and me feel comfortable that your project is indeed achievable within the semester, and will give me something to judge your progress by.
  4. Completion Criteria. Tell me what exactly you propose to demonstrate, at a minimum, to get a grade for the course. For example, "My project will be considered complete and ready for grading when I have implemented the _____ and  _____ and _____ features." This will most likely refer to your "Cool!" feature (above). State this as clearly as possible so that we can agree on what, at a minimum, is expected.
  5. Equipment Needs.
  6. Foreseeable Pitfalls and Alternatives. What tasks or features are you most unsure about, and what if you can't do or implement them? You should, where possible, have some alternative plans ready.
Choose and document (in your proposal) the above carefully. A little time spent here could save all of us tons of grief later. I want you all to succeed and have some fun!

Project Meetings

We will have several meetings to discuss your project proposal and your bi-weekly progress. I am willing to commit time to meeting with you and helping to guide your progress throughout the semester, but you must come to these meetings prepared. You should have been actually accomplishing things in the weeks before the meeting. We can discuss the direction your project is taking, possible ways to go from there, and particular problems you are encountering. You are also free to schedule additional meetings with me and discuss problems via e-mail as well (rather than wait 2 weeks to tell me you've hit a brick wall and can make no progress).

Paper Presentation

As part of this course, you will be presenting a recent research paper to the class. The grade for this presentation is actually separate from your project grade, but you may wish to choose to present a paper related to your project. By the above due date for paper selection, you must let me know (by e-mail, not just in person) what paper you will present. In the case of multiple students choosing the same paper, the one whose e-mail I received first will get to present that paper (this has actually happened). Again, don't just tell me your choice in person - I need a dated record of your choice (and I will not remember who tells me what in person after class).

You will prepare your presentation in Microsoft PowerPoint. At least one day before your presentation, you must schedule a meeting with me to show me your slides and discuss the presentation. This should give you enough time to make any changes I recommend. If your presentation file is too big to fit on a floppy disk, you will need to come see me before class so we can download your slides onto my laptop.

Here are a few guidelines for preparing your slides:

  1. Avoid background styles that are too "busy".
  2. Light text on a darker background is usually more visible than vice versa.
  3. Keep the text size fairly large (32 and 28 point)
  4. Make your text concise. Avoid using complete sentences, and try to keep bullet items from taking more than a single line.
  5. You may want a slide towards the beginning to show the organization of your talk so people can follow more easily.
  6. Be sure to motivate the problem being solved before getting into the details.

Progress Reports

After the full proposal is turned in, you will not have any more homework assignments, so I will expect you to be working hard and consistently on your project. It is unacceptable to work on the project just for the week before it is due. With this in mind, you will submit to me several weekly progress reports. Each such report should be one to two paragraphs describing your progress on the project for the week. This can include what things you tried out, what things you completed, and what things are giving you trouble. You should also refer to the milestones in your proposal to indicate if you are ahead or behind and any changes you need to make in your plan.

For the most part, these progress reports should typically be things you can write in 15 minutes or less, so they should not be burdens in themselves (but they should motivate you to make progress each week). You may think of the reports as containing the types of things we would discuss in a personal meeting.

Project Presentation

We will schedule the presentations for some day during final exam week (to be decided). I expect them to last less than 4 hours. You must attend the entire presentation period to see the demonstrations of your fellow students.

Project Deliverables

The deliverables that go with your project are not due until after the presentation. The final project report is non-trivial (probably 3-5 pages or so). It provides me written documentation of what your project was about, the techniques and features you implemented, and the overall system you produced. You should consider including actual pictures from your program as well as the description of its components. You can turn it in as a postscript or pdf file, an html document (a directory containing the actual html files plus any image files), or an MS Word file (Word 97 or earlier format, please). Remember that the report is your final chance to impress upon me all that you have accomplished. In addition, you should turn in your documented source code and any data files, along with instructions on how to execute programs, etc. All of this should be turned in electronically (e-mail me a zip file - don't just point me to your URL).


Home
February 10, 2000