HyperGraph: Using Hypermedia to Teach Computer Graphics


                  
                  G. Scott Owen
        Hypermedia and Visualization Laborator
           Mathematics and Computer Science 
             Georgia State University 
                Atlanta, GA 30303 
                owen@siggraph.org

Abstract

This paper describes a hypermedia system, HyperGraph, which has been developed for teaching computer graphics. HyperGraph is being used as the primary text for computer graphics and related courses at Georgia State University (GSU). It is continually evolving as more material is being added to the system and the information space is restructured.A goal for HyperGraph is that eventually students in the academic areas of Computer Science, Art, Physical and Natural Science, and Engineering will be able to use it to learn computer graphics. In this paper I will discuss the rationale for the project, the hardware and software development and delivery systems, the current status of the design and implementation of the system, some open research questions, and future plans for HyperGraph. The HyperGraph project is a joint effort of the ACM SIGGRAPH Education Committee, the National Science Foundation, and involves faculty from multiple institutions and disciplines.

Introduction

As the field of computer graphics increases in scope, it becomes increasingly necessary to convey more information to students in courses. We need to radically improve the learning of current course material and to incorporate more and newer material into the courses. This extreme improvement will not occur as long as we rely on the traditional lecture and demonstration based mode of instruction.

Hypermedia systems [NIEL89] have enormous potential for training and education, in both scientific and non-scientific areas, but it is as yet unrealized. The development of large and complex hypermedia systems for instruction is not an easy task as there are many difficult issues to be resolved. Some of these issues are general instructional issues, some are applicable to all types of Computer Aided Instruction (CAI), and others are specific to hypermedia systems. For example, a general instructional issue is what subject material to cover and how to cover it, a general CAI issue is human-computer interaction, and navigation through the information space is a hypermedia specific issue.

We have developed a hypermedia system, HyperGraph [OWEN92], to teach computer graphics. HyperGraph is used both for lecture presentation and for self-paced individual student learning. Even though a system to teach computer graphics is the focus of this paper, much of the discussion is also pertinent to other subject areas, especially in science or engineering. HyperGraph can be used as a prototype for similar development in other academic areas.

Portions of HyperGraph have been used in the GSU computer graphics courses for several quarters. Starting in the winter quarter, 1993, HyperGraph was the primary source for the students, i.e., there is no other primary text. HyperGraph includes text, images, computer animation, and interactive programs.

Hardware and Software Platforms

The choice of development and delivery platforms for HyperGraph was determined by the required accessibility of the system to the students at GSU and elsewhere. It must be on a machine that is widely available on campus or that many students owned. Similarly the delivery software must be either free or very inexpensive. The primary instructional machines at GSU have been IBM PC compatibles and many of our students own their own machines.

In addition, in the summers of 1990, 1993, and 1994, we held National Science Foundation Undergraduate Faculty Workshops in Computer Graphics. Of the faculty who have applied for these workshops, the overwheling majority have IBM PC compatiblesas the primary instructional machines on their campus. These considerations led us to develop HyperGraph on IBM PC compatibles in a Microsoft Windows environment.

HyperGraph was initially developed on an IBM PS/2 with VGA graphics. This was an inadequate system since to show a shaded graphics image the only mode was the low resolution 320 x 200 pixel 256 color mode. This is a full screen mode which meant that switching from the text to an image involved a mode change and the two could not be simultaneously displayed.

In the fall of 1992 GSU upgraded its microcomputer laboratories with the purchase of over three hundred machines which are 80486 based with eight megabytes of RAM, 210 Mbytes disk, and super VGA graphics (up to 800 x 600 with 256 colors and for an additional $50 they can be upgraded to 800 x 600 with 32K colors). All of the machines on campus are networked so software stored on one server is accessible anywhere on campus. While still not ideal, these machines are quite adequate platforms for hypermedia systems.

The hypermedia authoring system used is Guide [GUID93], from OWL International. Guide is a window based system wherein one or more windows can be opened and each window can be scrolled and may contain an entire file of text and graphics. A disadvantage is that it is easier for the user to get lost with a large group of open windows. The windows can be dynamically resized and so are easy to port to systems with different screen resolutions.

This is an advantage over card based systems, such as Hypercard for the Macintosh or Asymetrix Toolbook for the IBM PC, that are limited in that only one card at a time can be displayed.. Another problem with card-based systems is that the card size is fixed and is usually given in terms of the absolute number of horizontal and vertical pixels. The card can be larger than the actual screen and the extra material can be viewed by scrolling. If additional information is added to a card, it might overflow and a new card must be created.

Fixing the card size in the application hinders portability. For example, an application might be developed for a Macintosh with a small screen size, e.g., 512 x 340 pixels. When this is moved to a Macintosh II or an IBM VGA system the card no longer fills the screen. This would be particularly bad if the application were moved to a workstation with 1240 x 1024 resolution.

Although HyperGraph contains different media types, there is a large amount of text, just as there is in conventional computer graphics textbooks. Thus, we needed an authoring system that was very capable and flexible in the handling of hypertext. Guide supports four types of buttons or links. The first is a "pop up" button. When it is clicked a block of text pops up and remains only so long as the mouse button is depressed. This feature is useful for short text segments such as definitions or image annotations.

The second type of button is an expansion button. When clicked, an in-place text expansion occurs. The expansion can consist of text and/or images. This is useful for showing a superficial view of a topic and then a more detailed, expanded explanation. The third type of button is a "goto" general hypertext button which opens a window displaying another document. The last type of button is a command button, which is used to launch external commands, which can display images, an animation, video, or interactive programs.

The latest version of Guide (3.1) includes a Guide Viewer that can be freely distributed. Thus, the students can legally have their own copies of HyperGraph to use at home.

HyperGraph System Evolution

The origin of HyperGraph was in a set of notes that I had developed for my computer graphics classes. For an overview of the material taught in these courses see [OWEN91a] and [OWEN92b]. These notes were extended and used for the National Science Foundation Faculty Enhancement Workshops on Computer Graphics in August, 1990, 1993, and 1994 (NSF Grants #USE-8954402 and ) [OWEN91b]. In our computer graphics courses we have used a variety of texts and found that our notes were becoming incompatible with any single text and the students were using the outside texts less and less. With support from the ACM SIGGRAPH Education Committee plus residual NSF funds, these notes were converted to the initial version of HyperGraph [OWEN92a]. As discussed above, the platform was an IBM PS/2 with VGA graphics, which was inadequate. Little work was done to improve HyperGraph and it was not much used as a hypermedia system until GSU purchased the new computers, as described above.

With the newer computers available, we decided to use HyperGraph as the primary reference for teaching the computer graphics classes, starting winter quarter, 1993. The introductory computer graphics class is taught winter and summer quarters and the advanced course is taught spring quarter. HyperGraph will also be used in National Science Foundation Faculty Enhancement Workshop on Computer Graphics to be held at GSU in August, 1993 and 1994 (NSF Grant #DUE-9255489).

Because of its origin as a set of notes, the initial version of HyperGraph was organized as a book with a table of contents and links to the different chapters. While this view has been preserved and is still available to the students, the information space has been restructured in terms of a set of conceptual maps, represented as directed graphs, spanning the topics in computer graphics.

The student now has the option of moving through the set of conceptual maps until they arrive at a specific information node consisting of text, graphics, and interactive programs. Some of the interactive demonstration programs were written at GSU and some are from external sources. The ACM SIGGRAPH Computer Graphics Courseware Repository (CGCR) is housed at GSU and we are incorporating programs from there, such as the set of interactive demonstration programs written by Lt. Col. Dino Schweitzer of the U. S. Air Force Academy. Many of the programs were initially written for a DOS environment and we are converting them to the Microsoft Windows environment.

An example trail of maps is given in the following. In self-defense let me point out that this set of conceptual maps is not set in stone and will be modified according to feedback from the graphics community. Therefore, rather than becoming enraged because the maps do not correspond to your own vision of computer graphics, I implore the reader to calmly suggest how the maps could be reorganized and improved. Changing the view from that of a book with chapters to that of conceptual maps has implications for the structure of the information space as discussed below in the section on Research Questions.

The initial screen is a title page with an image produced by one of my previous students. There are two buttons on this page, one linking the table of contents and the other going to the top level conceptual map (Figure 1), which is an overview of computer graphics. Clicking on any of the leaf nodes moves the user to another map, for example Applications (Figure 2) or Image Synthesis (Figure 3). Clicking on Rendering takes the user to Figure 4 and then clicking on Shading Models takes the user to an information node on this topic.

This node discusses the constant (faceted), Gouraud, and Phong shading models. These three shading models are illustrated by stored images of the same scene rendered with the three shading models. In addition, the student can execute a program which would allow her to interactively change all of the parameters, and the shading model. This lets the student see the effect of varying the light source and its associated parameters, for example, position, distance, and intensity, and also the reflectivity characteristics of the object surface.

The student can also determine the effects of the shading model used on the required data structure. For example, a simple cube, if defined with only six faces and eight vertices, loses its edges when either Gouraud or Phong shading is used. To maintain the edges a different data structure must be used where the vertices are each defined three times, once for each polygon. Both cube data structures can be used by the program so the students can see the effect with the different shading models.

The Gouraud shading model has difficulty with specular highlights. Since intensities are only computed at the vertices, if a specular highlight falls in the center of a polygon it is totally missed. Thus, in an animation sequence with a moving light source, the specular highlight might be at a vertex position, making it visible, then move to the center of the polygon, so it would disappear, then move to another vertex, making it reappear.

There is a short animation which illustrates this problem. It shows a simple polyhedron and a moving light source. One version of the animation uses Gouraud shading and the other version uses Phong shading. The animations are stored and replayed as Autodesk Animator flic files using a freeware player. For this case interactive real time animation would be preferred so that the student could manipulate the parameters, for example, the path of the light source and the number and size of the polygons in the polyhedron, and we are working on this.

Research Questions

There are several unresolved research questions for HyperGraph. The structure of the information space is a major one. As noted above, it initially started as a simple version of a book, with access to the topics through a table of contents. In this view the information nodes are similar to book chapters. Now it has evolved to also allow navigation with conceptual maps. In this view there is more of a node and link structure to the system. The question arises as to how to make these two views compatible since they can lead to conflicting information organizations.

Take, for example, the topic of anti-aliasing. In a book and chapter view, this topic may be discussed in many different places, such as for lines, polygons, textures, temporal anti-aliasing, etc., as well as a general discussion of digital processing theory. In a conceptual map view, perhaps all material related to anti-aliasing should be in one node, or in a set of neighboring nodes, with links to these nodes from the book chapters. What should be the granularity of these nodes, i.e., should there be a large number of small nodes, each with many links to other related nodes or should there be a smaller number of larger nodes, each with more information?

As stated above, HyperGraph initially was structured as a book with chapters. It is now being changed to better accommodate the conceptual map view, i.e., we are collecting related material that is dispersed throughout different chapters and placing it into a set of related nodes. The granularity issue will be determined by student feedback over several quarters.

Conclusion and Future Plans

We have developed a hypermedia system, HyperGraph, and are using it to teach computer graphics. HyperGraph incorporates text, images, computer animations, and interactive programs. It's initial information structure and method of navigation was as a book with chapters and it is evolving into a more general node and link structure with a set of conceptual maps as the primary navigation tool. As the size of HyperGraph increases, navigation will become more of a problem and new methods of navigation may need to be added to the system.

HyperGraph has been put into the ACM SIGGRAPH CGCR and is available via ftp access. (To access the CGCR do the following: ftp to cgcr.gsu.edu, login as cgcr with password cgcr). We are soliciting the development of different information nodes by external faculty. We want to incorporate different views of many of the topics, for example, a view from the art perspective as well as computer science. Eventually, HyperGraph can be used in different types of computer graphics courses.


References:

[GUID93] Guide 3.1 is a product of OWL International, Inc., 2800 156th Ave., SE., Bellevue, WA 98007-9949.

[NIEL89] J. Nielsen, "HyperText & HyperMedia", Academic Press, 1989.

[OWEN92a] Owen, G. S. "HyperGraph - A Hypermedia System for Teaching Computer Graphics", Interactive Learning Through Visualization, S. Cunningham & R. J. Hubbold, eds., Springer-Verlag, 1992.

[OWEN92b] Owen, G. S., "Teaching Computer Graphics Using Renderman", Proceedings of the Twenty-Third SIGCSE Technical Symposium on Computer Science Education. Kansas City, March, 1992.

[OWEN91a] Owen, G. S., "A Two Quarter Computer Graphics Sequence", Computer Graphics, Vol. 25 Num. 3, July, 1991.

[OWEN91b] Owen, G. S. and Miller, V.A., "A Workshop on Computer Graphics for Undergraduate Faculty", Computer Graphics, Vol. 25, Num. 3, July, 1991.
Return to Research Papers.